split into classes and changed to fiddle