Base classes and functions
Core functionalities