Progress to #46; closed #45