Now creates a base adapter class