closed #537
closed #578