close #64 moved common methods to base class