pushing kashif's work. see test3.html