fixing logic still