lots of polishing and refinements :)