closed #2760 closed #2761 closed #2762