Rebased latest changes Jun 9, 2013