Finalized part I and 1/2 of part II.