Я снова открыл эту тему, так как она пришла мне в голову как альтернативное решение проблемы, обсуждаемой в другой теме: