более правильное решение issue96 и issue95