new common classes and common.contract interfaces