fix all bugs