starting code gen