implemented still working on case