Divide interface and core
Divide interface and core