Added code generation stuff