build a core
lots of changes