Initial version nearly complete