Every key turns the message list into a ciphertext list without collisions, otherwise decryption fails. Try to arrange the keys so that no ciphertext ever rules a message out. With fewer keys than messages the arrangement does not exist, and the grid shows you why.
Row k, column m holds Enc(k, m). Click any cell to change it — the clash swaps automatically so each key stays invertible.
Click a column to inspect that ciphertext. Every column sums to |K|, because each key sends exactly one message there.
Blue is the prior, uniform over messages. Grey is what remains possible.
Why no rearrangement can help.