base code-generator