first custom block, next: code generation