core class