По третьему пункту не проходит, чтоб его. Хотя, по сути, 4 пункт аналогичный алгоритм проходит, за исключением замены строки.