fixed addressed all feedback