Wordle Lovers - Play the NYT Daily Game

  • Thread starter Thread starter fresh_42
  • Start date Start date
  • Tags Tags
    Game
AI Thread Summary
The discussion centers around the enjoyment of the daily Wordle game from the New York Times, with participants sharing their results and strategies. Many players express their competitive nature, often playing against friends or family, and discuss their preferred starting words. There are mentions of variations of Wordle in different languages and formats, highlighting the game's widespread appeal. Some users share their experiences with similar games, like Mastermind, and discuss the challenges posed by obscure words. Overall, the thread fosters a community of Wordle enthusiasts who appreciate the game's complexity and fun.
  • #5,801
jack action said:
I then sum up all the 1xi and choose the one with the highest value.
What if ##x_i = 0## for some ##i##?
 
Physics news on Phys.org
  • #5,802
jack action said:
I couldn't see one more probable than the other with BLISS MISSY TWIST, so I had to go with a filter word.
You missed that words 1 and 3 have the same letter in position 3 whilst word 2 has this letter in position 2. Say you pick word 3 (the answer as it turns out) as your filter. You are guaranteed to get the answer after the same number of tries as with the filter that you actually used plus you create the possibility to get the answer in one less try with a probability of 1/3.
That's because
If word 3 turns out to be the answer (the case here), you got it in one less try.
If word 3 is not the answer, then
If said letter appears as correct in position 3, the answer must be word 1​
If said letter appears as incorrect in position 3, the answer must be word 2.​

Personally, I prefer to choose filters using my brain rather than an algorithm.
 
  • Like
Likes jack action and Orodruin
  • #5,803
Wordle 1,254 3/6

🟩⬜⬜🟩⬜
🟩🟨⬜🟩⬜
🟩🟩🟩🟩🟩
 
  • #5,804
Wordle 1,254 4/6

🟩⬛⬛⬛⬛
🟩⬛🟩⬛⬛
🟩🟩🟩⬛🟩
🟩🟩🟩🟩🟩
 
  • #5,805
Wordle 1,254 5/6

🟨⬜⬜⬜🟩 SCANT
⬜⬜⬜⬜⬜ MOLER
⬜🟨⬜⬜🟩 FIGHT
⬜⬜⬜⬜⬜ BUDDY
🟩🟩🟩🟩🟩 TWIST

My guesses 2, 3, and 4 were all trying to find other correct letters. Sometimes that works, sometimes not.
 
  • Like
Likes dwarde and jack action
  • #5,806
Orodruin said:
What if ##x_i = 0## for some ##i##?
##x_i## is set to the number of possible answers (~ 1000).

kuruman said:
You missed that words 1 and 3 have the same letter in position 3 whilst word 2 has this letter in position 2.
You are right, I did. o:)
kuruman said:
Personally, I prefer to choose filters using my brain rather than an algorithm.
My personal goal is to create an algorithm that could mimic my selection process. Why do I choose one word instead of another and how can I translate that into code?

Otherwise, my strategy was fairly easy and redundant: Use the words IRATE CLONS DUMPY BIGHA WAKFS, in that order, as your guesses unless the answer pops up in your head (usually when you have found 4 letters). These words eliminate the most popular letters in the first words and - if you haven't found all letters - only JQVXZ are left. It is almost guaranteed you will get it in 6 even without consulting a dictionary or a list, or even not knowing the word at all (English is not my mother tongue). My average was around 4 guesses, 5 top.

Once you can get the solution so easily, you look for other challenges.
 
  • #5,807
jack action said:
IRATE CLONS DUMPY BIGHA WAKFS
If the solution to a daily puzzle is ever CLONS, BIGHA, or WAKFS, I will never play again. I'm wondering how these ever got onto the list of acceptable guesses. Now that I think about it, I don't know why the game design has more words on the "ok guess" list than on the "possible answer" list.
 
  • #5,808
jack action said:
##x_i## is set to the number of possible answers (~ 1000).
Not ##x##, ##x_i##, which by your account is the number of solutions left given a pattern. With around 1000 solutions and 238 patterns, the risk of getting at least one pattern which is not possible must be large. If not then it is unclear how you have defined ##x_i##.
jack action said:
the count x for the possible outcomes (~ 1000) for every possible pattern i of 🟩, 🟨 or ⬛ (238 of them!)
 
  • #5,810
gmax137 said:
I don't know why the game design has more words on the "ok guess" list than on the "possible answer" list.
Consider the comprehensive list containing all ##N## five-letter words. The "ok guess" and "possible answer" list are subsets of this, ##N_{OK}\leq N## and ##N_{P.A.}\leq N##. It is fair to say that the designers of the game want as many people as possible to play so that they can sell ads. They do not want to discourage anyone within the spectrum of people who think that the game is "too hard" on one end and not "ridiculous" on the other.

If ##N_{OK}\leq N## then someone who has found WAKFS and BIGHA on the web as legitimate words will most likely find the game dissatisfying if those words cannot be used as guesses. The idea is to arrive at the target word, not to figure out which word(s) are OK and which are not. Thus the constraint ##N_{OK}\leq N.##

However one cannot set ##N_{P.A.}= N## because then the person, like you, who plays the game for fun, will wonder what the hell WAKFS or BIGHA are if one of them appears as the daily word. Is the game rigged against the solver and worth playing? Thus the constraint ##N_{P.A.}\leq N.##

Of course, some human decided on the guidelines for inclusion in the P.A. list. Some are obvious, e.g. no plurals of 4-letter nouns or third person singulars of 4-letter verbs. Others are not so obvious. For example ADIEU, a favorite seed of many, is on both lists while ADIOS is only on the OK list but not on the P.A. list. Go figure.
 
  • #5,811
Wordle 1,255 3/6

⬛⬛🟨⬛⬛ [PARSE] 47 left
🟩⬛⬛🟨⬛ [BITOU] filter - 1 left
🟩🟩🟩🟩🟩 [BROWN]

gmax137 said:
If the solution to a daily puzzle is ever CLONS, BIGHA, or WAKFS
I don't expect them to be solutions, there are only filter words to eliminate the most common letters.

Orodruin said:
If not then it is unclear how you have defined ##x_i##.
Example:

For the pattern 🟩🟩🟩🟩🟩 I have one possible solution - the actual answer to the puzzle - so ##x = 1## thus ##\frac{1}{x} = 1## for that pattern.

Say for the pattern ⬛⬛🟨⬛⬛ I have 47 possible solutions for that same seed word - as it did today for my seed word - then ##x = 47## thus ##\frac{1}{x} = 0.0213## for that pattern.

If a pattern gives you 0 possible solutions then all known solutions - say 1000 of them - are still possible, thus ##\frac{1}{x} = 0.001## for that pattern.

Hence, for that word, with those 3 patterns only, the sum is ##1.0223##. With 238 patterns, the "value" (i.e. ##\sum \frac{1}{x_i}##) for a possible seed word, with a list of 1000 possible solutions, should lie somewhere between 1.237 and 238.

Here are the head and tail of my list of possible solutions (1063 words) as calculated today:

Code:
56.87877176330782981142 parse
56.71509589392361046686 bleat
55.43888935213718560553 shale
55.01052218765906827879 cleat
54.88989328229117523048 baron
53.81442942634878178095 bloat
53.79423003532885470371 leach
53.22460980294216326536 pulse
52.84561657818863628216 pried
52.75236703440116855539 purse

[...]

16.26406338557719068169 banjo
16.16046932891694134750 buxom
16.15133115383457283515 quack
15.96338486087747459938 juicy
15.92016037764995554693 issue
15.62426833882845554579 kitty
15.29790757004372842349 squib
15.22805152679214042192 jewel
14.10969827716669384071 puffy
12.53200693341326199116 fuzzy

There may be better seed words that are not possible solutions, but it is an additional 10,000+ words to check, and a list for 1000 words already takes ~40 minutes, so ...
 
  • #5,812
Wordle 1,255 4/6

⬜⬜🟦🟦🟦
⬜🟧⬜🟧🟧
⬜🟧🟧🟧🟧
🟧🟧🟧🟧🟧
 
  • #5,813
ugh, I haven't lost a game in many months
Wordle 1,255 X/6

⬜⬜⬜⬜⬜
⬜🟩⬜⬜⬜
⬜🟩🟩⬜⬜
⬜🟩🟩⬜⬜
⬜🟩🟩⬜⬜ A mistake, this has a letter I already knew to be unused :mad:
⬜🟩🟩🟩🟩
 
  • #5,814
jack action said:
Example:

For the pattern 🟩🟩🟩🟩🟩 I have one possible solution - the actual answer to the puzzle - so ##x = 1## thus ##\frac{1}{x} = 1## for that pattern.
Ok.

jack action said:
Say for the pattern ⬛⬛🟨⬛⬛ I have 47 possible solutions for that same seed word - as it did today for my seed word - then ##x = 47## thus ##\frac{1}{x} = 0.0213## for that pattern.

Ok


jack action said:
If a pattern gives you 0 possible solutions then all known solutions - say 1000 of them - are still possible, thus ##\frac{1}{x} = 0.001## for that pattern.
But now the logic broke. You cannot have 1000 solutions satisfying the pattern at the same time as you have 0 solutions satisfying the pattern.

As per your previous two examples, if there are ##x_i## words giving that pattern, then you add ##1/x_i##. If there are 0 words giving a specific pattern, then you should get a 1/0. Unless you choose to disregard that pattern as it will never show up? (It cannot possibly show if there are zero words giving the pattern)
 
  • #5,815
Wordle 1,255 4/6

⬜⬜🟨⬜⬜
🟨⬜⬜⬜⬜
⬜⬜🟩⬜🟨
🟩🟩🟩🟩🟩
 
  • #5,816
Orodruin said:
But now the logic broke. You cannot have 1000 solutions satisfying the pattern at the same time as you have 0 solutions satisfying the pattern.
If no solutions satisfy the pattern, then all solutions are still possible. No? The "good" patterns only restrict it even more. It is not about how many solutions satisfy the pattern but more about how many solutions are possible.

You have to remember also that my list is not complete, as discussed earlier, here and here. So a pattern not finding a solution might be misleading.

In any case, I just want to have a number a lot smaller than the other ones. Zero might have been more realistic (because these patterns will never show up), but I don't think it would change the result significantly. For example, the word ABBOT value is 34.57 with 169 patterns having no hit. Setting these values to 0 instead of 1/1063 just removes 0.16 from the final value.
 
  • #5,817
jack action said:
If no solutions satisfy the pattern, then all solutions are still possible. No?
No. If you would get a pattern that no solutions satisfy, then none of the solutions are possible anymore. This could technically happen if the solution is a word that satisfies the pattern, but is not in your list of possible solutions.


jack action said:
You have to remember also that my list is not complete, as discussed earlier, here and here. So a pattern not finding a solution might be misleading.
Exactly, all I am saying that - as you presented your model - it would mean division by zero. If your actual model is adding 1/1000 (or zero) for those patterns that give x = 0 but 1/x for all others, then that is a better model in the sense that it won’t contain 1/0s.

Still, the model seems improvable. Ideally you should make some information argument and weight by the probability of falling into each pattern.

The information left to deduce would typically be logarithmic in the number of words left so I would instead use ##s_i =\log_2(x_i)## as the remaining entropy for a given pattern. The probability of falling into that pattern is also proportional to ##x_i## so I would weight the sum by that to make a score based on expected entropy remaining
$$
S = \sum_i x_i s_i.
$$
Larger entropy is bad so you would want to minimise this score.

If you want to get really fancy with your own hypothesis you should also give each word a separate weight based on its probability of being chosen such that ##x_i## is no longer the number of words in each pattern but the sum of their weights.
 
  • #5,818
To put the above into context with an example.

Consider the comparison between two possible seeds. Both seeds are possible solutions but the first gives 10 additional patterns with a single remaining word and one pattern with the rest. The second seed gives 20 patterns with 50 remaining words each.

Your comparator would give roughly 11 in score for the first, but 20/50 + 1 = 1.4 for the second. However, the second is generally going to be a better seed in most cases. Sure, if you are lucky you will get a 1% chance to get the solution on the next guess with the first seed, but in 99% of the cases you are basically none the wiser than before the seed. For the second seed, you guarantee at most 50 remaining words.

In the comparator of post 5817 the first option would score around ##1000\log_2(1000) = 10000## whereas the second would score ##20\cdot 50 \log_2(50) = 1000 \log_2(50) = 5600##.
 
  • #5,819
Wordle 1,256 5/6
⬜⬜🟨⬜⬜
🟩⬜⬜🟨⬜
🟩🟨🟨⬜⬜
🟩🟩🟩🟨⬜
🟩🟩🟩🟩🟩

#GuessTheLogo #71
® 🟥 🟥 🟩 ⬜ ⬜
#IconIdentifier
[Spam link deleted by the Mentors]
 
Last edited by a moderator:
  • #5,820
I've been thinking about evaluating the ideal seed word for a long time. @OmCheeto shared his method and got me thinking.

Intuitively, what I don't like in his method is that a correctly positioned letter weighs as much as one present in the word.

This idea of evaluating the patterns came to me. I'm still trying to figure out a proper way to weigh them.

Orodruin said:
Your comparator would give roughly 11 in score for the first, but 20/50 + 1 = 1.4 for the second. However, the second is generally going to be a better seed in most cases. Sure, if you are lucky you will get a 1% chance to get the solution on the next guess with the first seed, but in 99% of the cases you are basically none the wiser than before the seed. For the second seed, you guarantee at most 50 remaining words.
This is a question I asked myself as well. How to weigh a seed word that gives only a single valid pattern with 1 possible solution with another giving 150 valid patterns with 400 possible solutions each?

Orodruin said:
In the comparator of post 5817 the first option would score around ##1000\log_2(1000) = 10000## whereas the second would score ##20\cdot 50 \log_2(50) = 1000 \log_2(50) = 5600##.
But, for the first option, isn't it ##10\cdot1\log_2(1) = 0##? Which gives us the same problem.

So I gave your method a try and the results are (comparing with the previous post):
Code:
4588.20531194210523224391 arise
4675.54314301487405749215 saner
4676.11281919344526423557 arose
4721.76625519139482748979 least
4728.89845461676390824165 stare
4758.30369784855998400051 later
4776.94838870606320728379 parse
4787.55291969866344838355 alert
4830.69125524560430809960 roast
4845.61333562902289041874 siren

[...]

8803.49726239582453041463 kappa
8814.80630391203441924483 femme
8939.14471626754972523066 slyly
9069.06715927188421580731 ninny
9237.85859957449918736648 eerie
10004.90304370215078150383 mamma
10198.61998557413705737079 geese
11435.74223379053281061499 emcee
11507.15016864005646684804 melee
11625.47238092071591300699 tepee

I like this one better because it has more popular letters in the first words and all the last words have very few letters, which seems logical. The list also looks more like the one from @OmCheeto . The one in the previous post had a lot of b's in the first words which seems odd.
 
  • #5,821
jack action said:
I've been thinking about evaluating the ideal seed word for a long time. @OmCheeto shared his method and got me thinking.
Indeed, the correct measure is remaining entropy. The aim of the game is to decrease entropy to zero.

jack action said:
This idea of evaluating the patterns came to me. I'm still trying to figure out a proper way to weigh them.

This is a question I asked myself as well. How to weigh a seed word that gives only a single valid pattern with 1 possible solution with another giving 150 valid patterns with 400 possible solutions each?
Expected remaining entropy after the seed seems like a reasonable idea.

jack action said:
But, for the first option, isn't it ##10\cdot1\log_2(1) = 0##? Which gives us the same problem.
It is ##10\log_2(1) + 1000 \log_2(1000)##. It is never an issue because I am not dividing by those zeros. A zero in the sum indicates a pattern where the puzzle is solved - no entropy left in that pattern.

jack action said:
So I gave your method a try and the results are (comparing with the previous post):
Code:
4588.20531194210523224391 arise
4675.54314301487405749215 saner
4676.11281919344526423557 arose
4721.76625519139482748979 least
4728.89845461676390824165 stare
4758.30369784855998400051 later
4776.94838870606320728379 parse
4787.55291969866344838355 alert
4830.69125524560430809960 roast
4845.61333562902289041874 siren

[...]

8803.49726239582453041463 kappa
8814.80630391203441924483 femme
8939.14471626754972523066 slyly
9069.06715927188421580731 ninny
9237.85859957449918736648 eerie
10004.90304370215078150383 mamma
10198.61998557413705737079 geese
11435.74223379053281061499 emcee
11507.15016864005646684804 melee
11625.47238092071591300699 tepee

I like this one better because it has more popular letters in the first words and all the last words have very few letters, which seems logical. The list also looks more like the one from @OmCheeto . The one in the previous post had a lot of b's in the first words which seems odd.
 
  • Like
Likes jack action
  • #5,822
Wordle 1,255 3/6

⬛🟨⬛⬛🟨
⬛🟨🟩🟨⬛
🟩🟩🟩🟩🟩
 
  • #5,823
I should also say:

If you want to normalize the comparator, it should also be divided by the total number of remaining words. This will give the expected entropy after using the seed. This would be more relevant to compare seeds between days as the normalization would do nothing for the order on a particular day (all comparators receive the same normalising factor). As the base entropy keeps decreasing as words are used up, the expected entropy after one guess should also generally decrease.
 
  • Like
Likes jack action
  • #5,824
Wordle 1,256 4/6

⬜⬜⬜⬜⬜
🟦⬜⬜🟧⬜
⬜⬜⬜⬜⬜
🟧🟧🟧🟧🟧
 
  • #5,825
Wordle 1,256 4/6

⬛⬛🟨⬛⬛ [ARISE] 62 left
⬛⬛🟩⬛⬛ [LYTED] filter - 4 left: MOTIF OPTIC PITCH WITCH
⬛🟩🟩🟩🟩 [PITCH] filter - 1 left
🟩🟩🟩🟩🟩 [WITCH]
 
  • #5,826
jack action said:
🟩🟩🟩🟩🟩 [WITCH]
No guess based on likelihood? Could have had it in 3?
 
  • #5,827
Wordle 1,256 6/6

⬜⬜⬜⬜⬜
⬜🟨⬜⬜⬜
🟨🟨🟨🟩⬜
⬜🟩🟩🟩🟩 another dumb mistake
🟩⬜⬜⬜⬜ filter
🟩🟩🟩🟩🟩

I need to slow down and think more before leaping
 
  • #5,828
gmax137 said:
⬜🟩🟩🟩🟩 another dumb mistake
🟩⬜⬜⬜⬜ filter
🟩🟩🟩🟩🟩

I need to slow down and think more before leaping
This is more or less what happened last time I lost my streak except I managed to misspell the solution… 581 days ago …
 
  • #5,829
gmax137 said:
Wordle 1,256 6/6

⬜⬜⬜⬜⬜
⬜🟨⬜⬜⬜
🟨🟨🟨🟩⬜
⬜🟩🟩🟩🟩 another dumb mistake
🟩⬜⬜⬜⬜ filter
🟩🟩🟩🟩🟩

I need to slow down and think more before leaping
Me too.?:)
 
  • #5,830
Wordle 1,256 6/6

🟨⬜⬜⬜⬜
⬜🟩⬜⬜🟨
⬜🟩🟩🟩🟩
⬜🟩🟩🟩🟩
⬜🟩🟩🟩🟩
🟩🟩🟩🟩🟩
 
  • #5,831
Orodruin said:
No guess based on likelihood? Could have had it in 3?
If I had done it, it would have probably been the same word, although it would have been a very tough choice. But the true reason I selected my third guess is that this word guaranteed the answer in 4. (Now that I look at it again, I realize that OPTIC and WITCH would also have done the job.)
 
  • #5,832
jack action said:
it would have been a very tough choice
yeah, I had jerk, DITCH, HITCH, PITCH, WITCH. So I eliminated jerk (following @jack action 's human input theory) and went with PITCH. But my second guess had been STRAP, so I shouldn't have even thought PITCH to be viable. A dumb mistake. Instead of PITCH I should have used a filter maybe DWEEB. Hindsight, you know, lol.
 
  • #5,833
Wordle 1,256 3/6

⬛⬛⬛⬛⬛
🟨⬛🟨⬛⬛
🟩🟩🟩🟩🟩
 
  • #5,834
jack action said:
If I had done it, it would have probably been the same word, although it would have been a very tough choice.

1732646549052.jpeg
 
  • Informative
  • Like
Likes jack action, gmax137 and dwarde
  • #5,835
Orodruin said:
That's the downside of being a recluse.
I don't pay for movies anymore, so I may catch that one only in a few years, on free TV ... if it is successful enough.

So I couldn't find anything positive about that word unless we were near Halloween.
 
  • #5,836
jack action said:
That's the downside of being a recluse.
I don't pay for movies anymore, so I may catch that one only in a few years, on free TV ... if it is successful enough.

So I couldn't find anything positive about that word unless we were near Halloween.
I mean, it is an a posteriori construction for me as well. I also went PITCH for the third guess. I probably should have thought more about it because it was not an actual filter for me. I was risking a 5.
 
  • #5,837
Wordle 1,257 4/6
⬜🟩🟩⬜⬜
⬜🟩🟩⬜⬜
⬜🟩🟩⬜⬜
🟩🟩🟩🟩🟩

#GuessTheHouse #64
🏠 🟩 ⬜ ⬜ ⬜ ⬜ ⬜
#DwellingDecoder
[Spam link deleted by the Mentors]
 
Last edited by a moderator:
  • #5,838
Wordle 1 257 3/6

🟨🟩⬜⬜⬜
🟩⬜⬜⬜🟨
🟩🟩🟩🟩🟩
 
  • #5,839
Wordle 1,257 4/6

🟨⬛⬛🟨⬛ [ARISE] 34 left
⬛🟩🟩⬛⬛ [PLATY] filter - 2 left: SLACK SLANG
🟩🟩🟩⬛⬛ [SLACK] most probable (even though I'm not too fond of either word) - 1 left
🟩🟩🟩🟩🟩 [SLANG]

most-probable method count update (Success/Fail): 38/17 - 69.1%/30.9%
 
  • #5,840
Wordle 1,257 3/6

🟧⬜🟦🟦⬜
⬜⬜🟧🟧⬜
🟧🟧🟧🟧🟧
 
  • #5,841
Wordle 1,257 5/6

⬜🟨⬜🟨⬜
🟨⬜⬜⬜🟨
🟩⬜🟩⬜⬜
🟩⬜🟩🟨⬜
🟩🟩🟩🟩🟩
 
  • #5,842
Wordle 1,257 4/6

🟨⬜⬜⬜🟨
⬜⬜🟨🟨🟨
🟩⬜⬜⬜⬜
🟩🟩🟩🟩🟩
 
  • #5,843
Wordle 1,257 4/6

🟩🟩⬛⬛⬛
🟩🟩⬛🟩⬛
🟩🟩🟩🟩⬛
🟩🟩🟩🟩🟩
 
  • #5,844
Wordle 1,258 4/6

⬛⬛⬛⬛⬛ [ARISE] 79 left
⬛🟨⬛⬛⬛ [LOUSY] filter - 3 left: CHOCK KNOWN THONG
🟨⬛🟩⬛⬛ [KNOWN] most probable - 1 left
🟩🟩🟩🟩🟩 [CHOCK]

most-probable method count update (Success/Fail): 38/18 - 67.9%/32.1%
 
  • #5,845
Wordle 1,258 4/6

⬛⬛⬛⬛⬛
⬛⬛⬛⬛⬛
⬛⬛🟩⬛⬛
🟩🟩🟩🟩🟩
 
  • Like
Likes jack action and gmax137
  • #5,846
Wordle 1,258 4/6

⬜🟦⬜⬜⬜
⬜⬜⬜⬜⬜
⬜⬜⬜⬜🟦
🟧🟧🟧🟧🟧

This is the first time I had to exclude half the alphabet before getting any letter in the correct place only to get all 5 simultaneously in the end. The incorrectly placed letter in guess 1 position 2 is the same as in guess 3 position 5. This illustrates the usefulness of filters with "orthogonal" letters.
 
  • #5,847
Wordle 1,258 3/6

⬜⬜⬜🟩⬜
⬜🟩🟩⬜⬜
🟩🟩🟩🟩🟩
 
  • #5,848
Wordle 1,258 5/6

⬜⬜⬜⬜⬜
⬜⬜🟩⬜⬜
⬜⬜🟩⬜⬜
⬜⬜🟩🟩🟩
🟩🟩🟩🟩🟩 I used up most of the alphabet but I finally got there. :cool:
 
  • #5,849
dwarde said:
Wordle 1,258 5/6

⬜⬜⬜⬜⬜
⬜⬜🟩⬜⬜
⬜⬜🟩⬜⬜
⬜⬜🟩🟩🟩
🟩🟩🟩🟩🟩 I used up most of the alphabet but I finally got there. :cool:
I think these are the types of wordle games that turn people to the dark side and start using spreadsheets and computer programs to figure out ways of battling such beasts.
 
  • #5,850
Wordle 1 259 3/6

⬜⬜⬜⬜⬜
⬜⬜🟨🟨⬜
🟩🟩🟩🟩🟩
 
Back
Top