added companion objects