Оригинал на спиготе тут. Требуется портировать на губку 1.12.2. Ценовая составляющая открыта для обсуждения.