Map class definition