11.3.2
finish core functionality