moved logic to classes for now