closed #1940 closed #1926 closed #1938