Накосячили, да. Попробуйте без ЭВМ, на бумажке, и скобочки делать как в СССР учили --- то кругленькие, то квадратненькие, а то и ваще {...} --- "фигурные" (accolades, braces).
Но потрясающая красота данного, даже накосяченного варианта, явно вопиет: более красивого упрощения в природе быть не может.
-- 17 окт 2014, 23:58:56 --Про буковку

, кстати, проще всего проверить: она всего один раз входит в source. И во что она превращается на выходе, т.е. в destination?
Вы такой ленивый, или просто поговорить с людями захотелось? Последнее знакомо, отношусь, как видите, с пониманием.