Begin code generation part