still fixing logic