marking unimplemented parts
machine-generated version