Fsharath

Please review, sorry for sending so many commits at once