added a adapter class