Part II The solutions shown below are correct if entered in the object hierarchy. They could also be formulated as blocks and tested in the workspace. For example, Program 1 could be written as a block and tested in the workspace as follows: [ :max | | timestwo | timestwo := 0. 1 to: max do: [:i | (timestwo:= timestwo+i)]. Transcript print:timestwo; cr. Transcript endEntry. ] value: 4. Program 1: sum: max | timestwo | timestwo:=0. 1 to: max do: [:i | (timestwo:= timestwo+i)]. Transcript print:timestwo; cr. Transcript endEntry. Program 2: repeat: count say: text 1 to: count do: [:i | (Transcript show: text) cr] Program 3: even: number | test | test := number\\2. (test=0) ifTrue: [(Transcript show:'Even') cr] ifFalse: [(Transcript show:'Odd') cr] Part III 1) List all parents and children of the array class starting with the top level class in the hierarchy. Does Smalltalk support multiple inheritance? Top Level: -Object Parent: -Collection Parent: -SequenceableCollection Parent: -ArrayedCollection -Array Children: -WeakArray Smalltalk does not support multiple inheritance. 2) What class does the literal '3.2' belong to? Describe a method that can be applied to this class. 3.2 belongs to the class float. There are a lot of methods which may by applied, such as '*' which returns the product of the object receiving the message and the argument.