Initial revision of 2.x version