+ "oawhakieab\n",
+ "browpcfrda\n",
+ "ecnotopssr\n",
+ "dikchdnpnb\n",
+ "bstapleokr\n",
+ "```\n",
+ "and the list of words:\n",
+ "\n",
+ "* adapting, apace, bombing, cackles, carnal, chump, coccyxes, cowhides, crazies, crumbled, dock, fickler, foaming, guts, knows, lived, minuend, molested, mown, pears, probed, rhubarb, rioted, shinier, solaria, staple, tops, wide, winced\n",
+ "\n",
+ "you can find these words:\n",
+ "\n",
+ "* apace, cowhides, crazies, dock, knows, lived, mown, pears, probed, rhubarb, rioted, staple, tops, wide\n",
+ "\n",
+ "but these are the decoys:\n",
+ "\n",
+ "* adapting, bombing, cackles, carnal, chump, coccyxes, crumbled, fickler, foaming, guts, minuend, molested, shinier, solaria, winced\n",
+ "\n",
+ "For this puzzle, there are 14 words with a total length of 76 letters. (Some of the words may overlap in the grid, but don't worry about that when counting word lengths in your solution.)\n",
+ "\n",
+ "## About wordsearches\n",
+ "\n",
+ "Words can go in any of the eight directions (up, down, left, right, and diagonals) in a straight line. A letter in the grid can be in more than one word. Words don't wrap around the edges of the grid.\n",
+ "\n",
+ "In the example above, the words \"lived\", \"wide\" and \"staple\" are in these positions (two words are diagonal and share a letter).\n",
+ "\n",
+ "```\n",
+ "..........\n",
+ ".......e..\n",
+ "....l.d...\n",
+ ".....i....\n",
+ "....w.v...\n",
+ ".......e..\n",
+ "........d.\n",
+ "..........\n",
+ "..........\n",
+ ".staple...\n",
+ "```\n",
+ "\n",
+ "The longest word, \"cowhides\", runs vertically upwards:\n",
+ "\n",
+ "```\n",
+ "..........\n",
+ "...s......\n",
+ "...e......\n",
+ "...d......\n",
+ "...i......\n",
+ "...h......\n",
+ "...w......\n",
+ "...o......\n",
+ "...c......\n",
+ "..........\n",
+ "```\n",
+ "\n",
+ "If there are words present in the grid that aren't in the list of words given, ignore them. For instance, you can see the word \"brow\" running left to right on the seventh row of the grid, but that doesn't count as a word in this puzzle because \"brow\" isn't in the list of words you're given.\n",
+ "\n",
+ "You're safe to assume that each word in the puzzle is present either zero or one times, never more.\n",
+ "\n",
+ "## File format\n",
+ "The wordsearch puzzle is given as a text file. The first line of the file is WxH, where W and H are the width and height of the puzzle grid, in characters. The next H lines are the grid, each line being W characters long. Finally, there's an arbitrary number of words to look for, one on each line.\n",
+ "\n",
+ "Ignore any trailing or leading blank lines, and any whitespace on a line.\n",
+ "\n",
+ "The example puzzle above, a ten by ten grid, would be written to a file as:\n",