debuging implemented