converted to classes