Протестировал на различных вариантах, постарался учесть все возможные казусы. Что мог упустить? Ведь все заявленные требования выполняются.