added core classes