Rosetta code migration
new classes