merge with lowel's update