no way to separate core and api