# [Perl 6], 91 bytes <!-- language-all: lang-perl6 --> .put for (("[@]"if Date.today~~/12.(0?<{^26}>)$/),"[ ]"xx$0,+$0^..25)[*;*].pick(*).rotor(5) [Try it online!][TIO-k46c4fhw] [Perl 6]: https://github.com/nxadm/rakudo-pkg [TIO-k46c4fhw]: https://tio.run/##K0gtyjH7/1@voLREIS2/SEFDQynaIVYpM03BJbEkVa8kPyWxsq5O39BIT8PA3qY6zsis1k5TRV9TRylaIVapokLFQEdbxSBOT8/IVDNay1orVq8gMzlbQ0tTryi/JL9Iw1Tz/38A "Perl 6 – Try It Online" ### Explanation: ~~~ .put for ( ... ) # Print for each of ("[@]"if Date.today~~/12.(0?<{^26}>)$/), # [@] if today is within the Christmas period "[ ]"xx$0, # As many [ ]s as the current date +$0^..25 # All the number from today to the 25th [*;*] # Flatten .pick(*) # Randomise .rotor(5) # Split into chunks of 5 ~~~