Refactor list base class