implemented string compy