basic interfaces for Marco