похоже, это лучший ответ, который я видел