(* Content-type: application/vnd.wolfram.mathematica *)

(*** Wolfram Notebook File ***)
(* http://www.wolfram.com/nb *)

(* CreatedBy='Wolfram 15.0' *)

(*CacheID: 234*)
(* Internal cache information:
NotebookFileLineBreakTest
NotebookFileLineBreakTest
NotebookDataPosition[       154,          7]
NotebookDataLength[     63665,       1596]
NotebookOptionsPosition[     53399,       1407]
NotebookOutlinePosition[     55849,       1462]
CellTagsIndexPosition[     55771,       1457]
WindowTitle->BIP39FinalWords
WindowFrame->Normal*)

(* Beginning of Notebook Content *)
Notebook[{
Cell[BoxData[GridBox[{
   {GridBox[{
      {
       ItemBox[Cell[BoxData[
         RowBox[{
          TemplateBox[{12},
           "Spacer1"], Cell[
          "WOLFRAM INSTITUTE/ PUZZLES SYMBOL", "PacletNameCell",
           TextAlignment->Center,ExpressionUUID->
           "3701b0f2-d69f-43bb-aaef-e1db8e13f1ee"], 
          TemplateBox[{8},
           "Spacer1"]}]],
         TextAlignment->Center,ExpressionUUID->
         "d2187b7d-1570-4970-b188-8296c01cc884"],
        Background->LightDarkSwitched[
          RGBColor[0.490196, 0.576471, 0.690196]],
        ItemSize->Full], ""}
     },
     GridBoxAlignment->{"Rows" -> {{Center}}},
     GridBoxItemSize->{"Columns" -> {Full, 
         Scaled[0.02]}, "Rows" -> {{2.5}}}], Cell[TextData[{
     Cell[BoxData[
      TagBox[
       ActionMenuBox[
        FrameBox[Cell[TextData[{
          "See Also",
          " ",
          Cell[BoxData[
           GraphicsBox[
            {GrayLevel[0.66667], Thickness[0.13], 
             LineBox[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]},
            AspectRatio->1,
            ImageSize->20,
            PlotRange->{{-3, 4}, {-1, 1}}]],ExpressionUUID->
           "540764d3-2de7-4144-ae92-23cef63ba2a3"]
         }],ExpressionUUID->"91b131b7-ad2f-4927-ad6c-24d23648d163"],
         StripOnInput->False],{
        StyleBox[
          "\"BIP39MnemonicQ\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/BIP39MnemonicQ"], 
         StyleBox[
          "\"BIP39Entropy\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/BIP39Entropy"], 
         StyleBox[
          "\"BIP39Mnemonic\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/BIP39Mnemonic"], 
         StyleBox["\"BIP39Seed\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/BIP39Seed"], 
         StyleBox[
          "\"$BIP39EnglishWords\"", "SeeAlsoRelated", StripOnInput -> False] :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/ref/$BIP39EnglishWords"]},
        Appearance->None,
        MenuAppearance->Automatic,
        MenuStyle->"SeeAlso"],
       MouseAppearanceTag["LinkHand"]]],
      LineSpacing->{1.4, 0},ExpressionUUID->
      "27ee0333-9710-43f3-9332-cbef5dbf7d55"],
     "\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\
\[ThickSpace]",
     Cell[BoxData[
      TagBox[
       ActionMenuBox[
        FrameBox[Cell[TextData[{
          "Related Guides",
          " ",
          Cell[BoxData[
           GraphicsBox[
            {GrayLevel[0.66667], Thickness[0.13], 
             LineBox[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]},
            AspectRatio->1,
            ImageSize->20,
            PlotRange->{{-3, 4}, {-1, 1}}]],ExpressionUUID->
           "b43932ef-ec70-4db4-ad1e-14b1cd31ba69"]
         }],ExpressionUUID->"40a225b0-b730-41bc-ae8d-92301ea83208"],
         StripOnInput->False],{
        "\"Seeds\"" :> 
         Documentation`HelpLookup[
          "paclet:WolframInstitute/Puzzles/guide/Seeds"]},
        Appearance->None,
        MenuAppearance->Automatic,
        MenuStyle->"MoreAbout"],
       MouseAppearanceTag["LinkHand"]]],
      LineSpacing->{1.4, 0},ExpressionUUID->
      "0f0620ad-cf61-427d-895b-bc026337134c"],
     "\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\[ThickSpace]\
\[ThickSpace]",
     Cell[BoxData[
      TagBox[
       ActionMenuBox[
        FrameBox[Cell[TextData[{
          "URL",
          " ",
          Cell[BoxData[
           GraphicsBox[
            {GrayLevel[0.66667], Thickness[0.13], 
             LineBox[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]},
            AspectRatio->1,
            ImageSize->20,
            PlotRange->{{-3, 4}, {-1, 1}}]],ExpressionUUID->
           "9345dadc-8452-4280-9cd2-119e898db2c4"]
         }],ExpressionUUID->"3976aee1-aa01-48a1-8421-a359d7c6f46f"],
         StripOnInput->False],{
        "\"WolframInstitute/Puzzles/ref/BIP39FinalWords\"" :> None, 
         "\"Copy Wolfram Documentation Center URL\"" :> 
         CopyToClipboard["WolframInstitute/Puzzles/ref/BIP39FinalWords"], 
         Delimiter, "\"Copy web URL\"" :> 
         Module[{DocumentationSearch`Private`nb$}, 
           DocumentationSearch`Private`nb$ = 
            NotebookPut[
             Notebook[{
               Cell[BoxData[
                 MakeBoxes[
                  Hyperlink[
                   "http://reference.wolfram.com/language/WolframInstitute/\
Puzzles/ref/BIP39FinalWords.html"], StandardForm]], "Input", 
                 TextClipboardType -> "PlainText"]}, Visible -> False]]; 
           SelectionMove[DocumentationSearch`Private`nb$, All, Notebook]; 
           FrontEndTokenExecute[DocumentationSearch`Private`nb$, "Copy"]; 
           NotebookClose[DocumentationSearch`Private`nb$]; Null], 
         "\"Go to web URL\"" :> 
         FrontEndExecute[{
           NotebookLocate[{
             URL[If[TrueQ[False], 
                 "http://reference.wolfram.com/system-modeler/", 
                 "http://reference.wolfram.com/language/"] <> 
               "WolframInstitute/Puzzles/ref/BIP39FinalWords" <> ".html"], 
              None}]}]},
        Appearance->None,
        MenuAppearance->Automatic,
        MenuStyle->"URLMenu"],
       MouseAppearanceTag["LinkHand"]]],
      LineSpacing->{1.4, 0},ExpressionUUID->
      "706d09ac-e82a-4da1-b837-0546038c7f52"]
    }], "AnchorBar",
     CacheGraphics->False,ExpressionUUID->
     "35bb8706-d3a7-4a0b-bd0d-2bb29ecffaf2"]}
  }]], "AnchorBarGrid",
 CellID->1,ExpressionUUID->"9c73edc2-0acf-4390-8b63-0ff0c20d2028"],

Cell["WolframInstitute`Puzzles`", "ContextNameCell",ExpressionUUID->"9bc132ec-230f-4711-ae9f-c9e06041eccd"],

Cell[CellGroupData[{

Cell[BoxData[GridBox[{
   {Cell[TextData[{
     Cell[
     "BIP39FinalWords", "ObjectName",ExpressionUUID->
      "4753c339-ede4-43a3-aa73-ed4e29add82d"],
     Cell[BoxData[
      TemplateBox[{8},
       "Spacer1"]],ExpressionUUID->"2129918b-97d5-41e1-8af2-7afbaa6d33a7"],
     Cell[BoxData[
     ""], "ObjectNameTranslation",ExpressionUUID->
      "d396b785-acac-4bf7-a473-c91d9476539a"]
    }],ExpressionUUID->"0ed7ba9b-51fa-4ccf-b230-d7ea6e1856a7"], 
    "\[SpanFromLeft]"}
  }]], "ObjectNameGrid",ExpressionUUID->"4832781e-d604-4c4d-95ee-\
f9059b917484"],

Cell[BoxData[GridBox[{
   {"", Cell[TextData[{
     Cell[BoxData[
      RowBox[{
       TemplateBox[{
         Cell[
          TextData["BIP39FinalWords"]], 
         "paclet:WolframInstitute/Puzzles/ref/BIP39FinalWords", 
         "WolframInstitute/Puzzles Package Symbol"},
        "PackageLink",
        BaseStyle->"InlineFormula"], "[", 
       RowBox[{"{", 
        RowBox[{
         RowBox[{
          SubscriptBox[
           StyleBox["word", "TI"], 
           StyleBox["_", "TI"]], "1", "$"}], ",", " ", 
         RowBox[{
          SubscriptBox[
           StyleBox["word", "TI"], 
           StyleBox["_", "TI"]], "2", "$"}], ",", " ", "\[Ellipsis]"}], "}"}],
        "]"}]], "InlineFormula",
      FontFamily->"Source Sans Pro",
      FontSize->0.9 Inherited,ExpressionUUID->
      "80aa44bc-d637-4bfb-8d5e-cd84187fe401"],
     "\[LineSeparator]",
     "gives the words of ",
     Cell[BoxData[
      TemplateBox[{
        Cell[
         TextData["$BIP39EnglishWords"]], 
        "paclet:WolframInstitute/Puzzles/ref/$BIP39EnglishWords", 
        "WolframInstitute/Puzzles Package Symbol"},
       "PackageLink",
       BaseStyle->"InlineFormula"]], "InlineFormula",
      FontFamily->"Source Sans Pro",
      FontSize->0.9 Inherited,ExpressionUUID->
      "2c1a8cc1-54fe-486d-93b9-b85cb4284303"],
     " that complete the given leading words of a BIP39 English mnemonic to a \
checksum-valid one."
    }],ExpressionUUID->"ad47cabc-0f73-47b3-bc52-781bcabf322d"]},
   {"", Cell[TextData[{
     Cell[BoxData[
      RowBox[{
       TemplateBox[{
         Cell[
          TextData["BIP39FinalWords"]], 
         "paclet:WolframInstitute/Puzzles/ref/BIP39FinalWords", 
         "WolframInstitute/Puzzles Package Symbol"},
        "PackageLink",
        BaseStyle->"InlineFormula"], "[", 
       RowBox[{"\"\<\>", 
        SubscriptBox[
         StyleBox["word", "TI"], 
         SubscriptBox[
          StyleBox[
           RowBox[{"_", "1"}], "TI"], 
          StyleBox[
           RowBox[{" ", 
            RowBox[{"word$_", "2", "$", " ", "\[Ellipsis]"}]}], 
           "TR"]]], "\"\<\>"}], "]"}]], "InlineFormula",
      FontFamily->"Source Sans Pro",
      FontSize->0.9 Inherited,ExpressionUUID->
      "0b96bcf9-99cb-4965-8c68-7a2c9a590e1b"],
     "\[LineSeparator]",
     "takes the leading words as a sentence."
    }],ExpressionUUID->"782e1a62-cdf7-4eb3-a08b-87ceb2de2807"]}
  }]], "Usage",ExpressionUUID->"42dc3a86-d4a1-4589-882d-cfa87ff81f39"]
}, Open  ]],

Cell[CellGroupData[{

Cell[TextData[Cell[BoxData[Cell[TextData[{
  Cell[BoxData[
   DynamicBox[ToBoxes[
     If[CurrentValue[
        EvaluationCell[], "CellGroupOpen"] =!= Closed, 
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], 
      Rotate[
       Style[
        Graphics[{
          Thickness[0.18], 
          RGBColor[0.8509803921568627, 0.396078431372549, 0], 
          Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
         PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
        0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]],
    ImageSizeCache->{
     13.600000000000001`, {-0.1685058593749993, 13.768505859375}}]],
   ExpressionUUID->"7b058a79-5cfb-4304-bcd6-63e1052f85d4"],
  Cell[BoxData[
   TemplateBox[{1},
    "Spacer1"]],ExpressionUUID->"fc81411f-bd36-484b-b32e-dab871ae2e53"],
  "Details and Options"
 }], "NotesFrameText",ExpressionUUID->
  "89469436-d61d-4dad-8799-9951d19764b2"]],ExpressionUUID->"3d3b03ab-6b83-\
4f9e-a969-2025e4726125"]], "NotesSection",
 ShowGroupOpener->"Thumbnail",
 WholeCellGroupOpener->True,
 CellGroupingRules->{"SectionGrouping", 50},
 CacheGraphics->False,
 CellID->1710561191,ExpressionUUID->"c5a902ec-298a-4b4e-96fb-e4e6859cf992"],

Cell[TextData[{
 "Supported are 11, 14, 17, 20 and 23 leading words, completing to the 12, \
15, 18, 21 and 24-word mnemonics BIP39 admits. Any other count gives a ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["Failure"]], "paclet:ref/Failure"},
   "RefLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",ExpressionUUID->
  "72dbee2c-a8e6-4cb8-a59d-9f9507b20136"],
 ", as does a leading word outside the wordlist."
}], "Notes",ExpressionUUID->"fadfd3d1-1284-4f90-a3d8-bdbcdee45c0b"],

Cell["\<\
The completions come out in wordlist order, which is also the order of their \
11-bit indices.\
\>", "Notes",ExpressionUUID->"53e876dd-c3e0-4f53-9fcb-e6c045caaac4"],

Cell[TextData[{
 "The counts are 128, 64, 32, 16 and 8 respectively: the last word carries ",
 Cell[BoxData[
  RowBox[{
   StyleBox["(",
    SpanMaxSize->1], 
   RowBox[{"33", "-", 
    StyleBox["MS",
     FontSlant->"Plain"]}], 
   StyleBox[")",
    SpanMaxSize->1], "/", "3"}]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "53c1fb7c-7811-481a-9663-f3c34f08d06e"],
 " free entropy bits and ",
 Cell[BoxData[
  RowBox[{
   StyleBox["MS",
    FontSlant->"Plain"], "/", "3"}]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "ec3d5520-1d19-4939-a2f8-2ce4fe5cd4e7"],
 " checksum bits, and only the free bits vary."
}], "Notes",ExpressionUUID->"4be37883-47e8-45c6-9146-b8fd87985b95"],

Cell["\<\
Only those free bits are enumerated, so a 12-word completion costs 128 hashes \
rather than the 2048 a scan of the wordlist would cost, and a 24-word \
completion costs 8.\
\>", "Notes",ExpressionUUID->"67397b3b-ed06-4ad6-af2a-7c7ae2e995f8"],

Cell[TextData[{
 "The result is the same set that ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["Select"]], "paclet:ref/Select"},
   "RefLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "91c34a5b-edc7-49d4-a640-453ad5031f2d"],
 " over the wordlist with ",
 Cell[BoxData[
  TemplateBox[{
    Cell[
     TextData["BIP39MnemonicQ"]], 
    "paclet:WolframInstitute/Puzzles/ref/BIP39MnemonicQ", 
    "WolframInstitute/Puzzles Package Symbol"},
   "PackageLink",
   BaseStyle->"InlineFormula"]], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "fb1b7f44-13dd-482a-8da9-f60da369ecd4"],
 " gives."
}], "Notes",ExpressionUUID->"180fd255-0d7c-4398-a27a-7bb6d81bf0ef"]
}, Closed]],

Cell["", "PageDelimiter",ExpressionUUID->"1b106af4-b8f1-465d-a11b-0d4a16bd6667"],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[
     MatchQ[
      CurrentValue[
       EvaluationNotebook[], {
       TaggingRules, "Openers", "PrimaryExamplesSection"}, Open], 
      Alternatives[True, Open]], 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]],
   ImageSizeCache->{
    13.600000000000001`, {4.251494140625001, 9.348505859375}}]],
  ExpressionUUID->"17b98b74-454c-4167-850d-365deb3147f9"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"6bb2b4be-6788-4eae-87aa-542519fc41ed"],
 "Examples",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(13)", "ExampleCount",ExpressionUUID->
  "897d67de-ed45-4d80-b39c-6861bb7c5d6e"]
}], "PrimaryExamplesSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->1038354748,ExpressionUUID->"5c95ff9a-b7f6-45dd-b525-63ffa33d5f6c"],

Cell[BoxData[
 RowBox[{"Needs", "[", "\"\<WolframInstitute`Puzzles`\>\"", "]"}]], "Input", \
"ExampleInitialization",
 CellLabel->"In[1]:=",
 CellID->1969679695,ExpressionUUID->"2b2d4389-2adf-4365-a005-d19a0dfd0859"],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "81ab6a8b-5298-48b6-898f-ba19e8b48ea4"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"3e2db2ef-1a76-4145-b11b-66a7587a03d6"],
 "Basic Examples",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(3)", "ExampleCount",ExpressionUUID->
  "b262b407-cd2c-4710-a236-4bf59282bc27"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->1176134114,ExpressionUUID->"935fe54a-9784-4917-b8d7-c42985d46f0d"],

Cell[TextData[{
 "The 128 words that complete eleven ",
 Cell[BoxData["\<\"abandon\"\>"], "InlineFormula",
  FontFamily->"Source Sans Pro",
  FontSize->0.9 Inherited,ExpressionUUID->
  "534e5a74-94c0-4bc3-a86f-ccd8ed747e56"],
 "s to a valid 12-word mnemonic:"
}], "ExampleText",
 CellTags->
  "TextAnnotation",ExpressionUUID->"ff28d391-1aa0-4666-8e0d-d1013652881a"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"Take", "[", 
  RowBox[{
   RowBox[{
   "BIP39FinalWords", 
    "[", "\"\<abandon abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon\>\"", "]"}], ",", " ", "12"}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"849d903a-4703-4893-8d19-e2cf2acdae93"],

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{"\<\"about\"\>", ",", "\<\"actual\"\>", ",", "\<\"age\"\>", 
   ",", "\<\"alpha\"\>", ",", "\<\"angle\"\>", ",", "\<\"argue\"\>", 
   ",", "\<\"artwork\"\>", ",", "\<\"attract\"\>", ",", "\<\"bachelor\"\>", 
   ",", "\<\"bean\"\>", ",", "\<\"behind\"\>", ",", "\<\"blind\"\>"}], 
  "}"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"012254cc-4bd5-49d5-a067-0b992ebbaecc"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "ee49b6fc-c51b-402e-9d6f-587da7d61c6e"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"70bde9ea-1b20-4a5e-\
81a6-1bbaf1f1a243"],

Cell["\<\
There are exactly 128 of them, one per value of the seven free entropy bits:\
\>", "ExampleText",ExpressionUUID->"0a62a5a1-f236-4ed9-b326-c2928c42dfda"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"Length", "[", 
  RowBox[{
  "BIP39FinalWords", 
   "[", "\"\<abandon abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon\>\"", "]"}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"f910afbb-d7fa-4c6a-afcc-a1236762c9c8"],

Cell[BoxData["128"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"90ae8ccf-0be9-459e-8526-f0e07627f6c8"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "1f45c5df-a652-4cd7-a1c1-d7f34a6d03ce"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"def6fe32-d7a0-4e75-\
8ea8-ea0070d21d6c"],

Cell["\<\
The official test vector's own last word is among the completions of its \
first eleven:\
\>", "ExampleText",ExpressionUUID->"36c7b5a3-d3a1-40d2-98aa-550a0703210a"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"MemberQ", "[", 
  RowBox[{
   RowBox[{
   "BIP39FinalWords", 
    "[", "\"\<legal winner thank year wave sausage worth useful legal winner \
thank\>\"", "]"}], ",", " ", "\"\<yellow\>\""}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"1de7a4c7-9658-49db-9bb9-b42e8149747e"],

Cell[BoxData["True"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"44687aaf-1269-4fa5-bf4f-a10afcb4e7c8"]
}, Open  ]]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "c1d20180-d332-49d8-8ebc-e5c5c4133173"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"19716826-eb69-487f-ba69-0f850bb77036"],
 "Scope",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(4)", "ExampleCount",ExpressionUUID->
  "acb85b18-e081-4cc9-9832-3683a38c6082"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->1293636265,ExpressionUUID->"97dc9d99-40a3-41be-882d-c19aa749be6b"],

Cell["\<\
A 23-word prefix has only three free bits, so there are eight completions:\
\>", "ExampleText",ExpressionUUID->"e5edfd10-463b-4b02-9371-ab9248520e28"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"BIP39FinalWords", 
  "[", "\"\<void come effort suffer camp survey warrior heavy shoot primary \
clutch crush open amazing screen patrol group space point ten exist slush \
involve\>\"", "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"bdb2b774-b043-44f4-9df2-323ee76f6fb3"],

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{"\<\"across\"\>", ",", "\<\"cancel\"\>", ",", "\<\"floor\"\>", 
   ",", "\<\"illegal\"\>", ",", "\<\"onion\"\>", ",", "\<\"quit\"\>", 
   ",", "\<\"story\"\>", ",", "\<\"unfold\"\>"}], "}"}]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"b4f0691e-1075-4543-994c-6f048e7dff72"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "3333be6b-e631-43e6-ad16-bf081f668a4a"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"d8636818-c2b6-4ee8-\
8adb-ceeaa1671625"],

Cell["The leading words may be given as a list:", "ExampleText",ExpressionUUID->"aafe8448-7dcd-40ec-b023-003713e50cb9"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"Length", "[", 
  RowBox[{"BIP39FinalWords", "[", 
   RowBox[{"ConstantArray", "[", 
    RowBox[{"\"\<abandon\>\"", ",", " ", "14"}], "]"}], "]"}], "]"}]], "Input",\

 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"c112973c-ead4-4bff-9eab-9441ad84c38f"],

Cell[BoxData["64"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"e4a208da-9fbe-466f-8b5a-0c9f5a2e98bb"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "a79214e1-00f3-4ff6-90af-f29b1bf8aeac"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"22eb876d-437f-4f27-\
9264-448559a9e446"],

Cell["All five admitted prefix lengths, by completion count:", "ExampleText",ExpressionUUID->"8a4d84a3-dbe0-4baf-8f9c-ba4d6aaf75e5"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"Table", "[", 
  RowBox[{
   RowBox[{"Length", "[", 
    RowBox[{"BIP39FinalWords", "[", 
     RowBox[{"ConstantArray", "[", 
      RowBox[{"\"\<abandon\>\"", ",", " ", "n"}], "]"}], "]"}], "]"}], ",", 
   " ", 
   RowBox[{"{", 
    RowBox[{"n", ",", " ", 
     RowBox[{"{", 
      RowBox[{
      "11", ",", " ", "14", ",", " ", "17", ",", " ", "20", ",", " ", "23"}], 
      "}"}]}], "}"}]}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"4185b862-b981-45d7-9879-71af21097ff2"],

Cell[BoxData[
 RowBox[{"{", 
  RowBox[{"128", ",", "64", ",", "32", ",", "16", ",", "8"}], "}"}]], "Output",\

 CellLabel->"Out[1]= ",ExpressionUUID->"c6bc0c66-bd86-4b2f-888c-2e28d8f489f7"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "353c1eb1-ae34-4f6a-876b-338df4bdb5f2"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"6bc67f10-4b79-4f7e-\
ac87-84a32366e81c"],

Cell["\<\
A prefix length that completes to no admitted word count is a failed attempt:\
\
\>", "ExampleText",ExpressionUUID->"dc1714fc-0997-44d4-9d6f-7bc1cd0f3bea"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"BIP39FinalWords", "[", "\"\<abandon abandon abandon\>\"", 
  "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"7b77838b-ff74-49d3-9e40-a0157d3aacd7"],

Cell[BoxData[
 InterpretationBox[
  RowBox[{
   TagBox["Failure",
    "SummaryHead"], "[", 
   DynamicModuleBox[{Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, 
    
    TemplateBox[{
      PaneSelectorBox[{False -> GridBox[{{
            PaneBox[
             ButtonBox[
              DynamicBox[
               FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"]], 
              ButtonFunction :> (Typeset`open$$ = True), Appearance -> None, 
              BaseStyle -> {}, Evaluator -> Automatic, Method -> 
              "Preemptive"], Alignment -> {Center, Center}, ImageSize -> 
             Dynamic[{
               Automatic, 
                3.5 (CurrentValue["FontCapHeight"]/AbsoluteCurrentValue[
                 Magnification])}]], 
            FrameBox[
             StyleBox["\"\[WarningSign]\"", 
              Directive["Message", 35], StripOnInput -> False], 
             ContentPadding -> False, FrameStyle -> None, 
             FrameMargins -> {{0, 0}, {0, 0}}, StripOnInput -> False], 
            GridBox[{{
               TagBox[
                GridBox[{{
                   TagBox["\"Message: \"", "SummaryItemAnnotation"], 
                   "\[InvisibleSpace]", 
                   TagBox[
                   "\"a BIP39 mnemonic is completed from 11, 14, 17, 20 or 23 \
leading words.\"", "SummaryItem"]}}, 
                 GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, 
                 GridBoxAlignment -> {"Columns" -> {{Left}}}, 
                 GridBoxSpacings -> {"Columns" -> {{0}}}], "SummaryItem"]}, {
               TagBox[
                GridBox[{{
                   TagBox["\"Tag: \"", "SummaryItemAnnotation"], 
                   "\[InvisibleSpace]", 
                   TagBox["\"ConfirmationFailed\"", "SummaryItem"]}}, 
                 GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, 
                 GridBoxAlignment -> {"Columns" -> {{Left}}}, 
                 GridBoxSpacings -> {"Columns" -> {{0}}}], "SummaryItem"]}}, 
             GridBoxAlignment -> {
              "Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, AutoDelete -> 
             False, GridBoxItemSize -> {
              "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
             GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}},
              BaseStyle -> {
              ShowStringCharacters -> False, NumberMarks -> False, 
               PrintPrecision -> 3, ShowSyntaxStyles -> False}]}}, 
          GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, 
          AutoDelete -> False, 
          GridBoxItemSize -> {
           "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
          BaselinePosition -> {1, 1}], True -> GridBox[{{
            PaneBox[
             ButtonBox[
              DynamicBox[
               FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"]], 
              ButtonFunction :> (Typeset`open$$ = False), Appearance -> None, 
              BaseStyle -> {}, Evaluator -> Automatic, Method -> 
              "Preemptive"], Alignment -> {Center, Center}, ImageSize -> 
             Dynamic[{
               Automatic, 
                3.5 (CurrentValue["FontCapHeight"]/AbsoluteCurrentValue[
                 Magnification])}]], 
            FrameBox[
             StyleBox["\"\[WarningSign]\"", 
              Directive["Message", 35], StripOnInput -> False], 
             ContentPadding -> False, FrameStyle -> None, 
             FrameMargins -> {{0, 0}, {0, 0}}, StripOnInput -> False], 
            GridBox[{{
               TagBox[
                GridBox[{{
                   TagBox["\"Message: \"", "SummaryItemAnnotation"], 
                   "\[InvisibleSpace]", 
                   TagBox[
                   "\"a BIP39 mnemonic is completed from 11, 14, 17, 20 or 23 \
leading words.\"", "SummaryItem"]}}, 
                 GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, 
                 GridBoxAlignment -> {"Columns" -> {{Left}}}, 
                 GridBoxSpacings -> {"Columns" -> {{0}}}], "SummaryItem"]}, {
               TagBox[
                GridBox[{{
                   TagBox["\"Tag: \"", "SummaryItemAnnotation"], 
                   "\[InvisibleSpace]", 
                   TagBox["\"ConfirmationFailed\"", "SummaryItem"]}}, 
                 GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, 
                 GridBoxAlignment -> {"Columns" -> {{Left}}}, 
                 GridBoxSpacings -> {"Columns" -> {{0}}}], "SummaryItem"]}, {
               RowBox[{
                 TagBox[
                  
                  TemplateBox[{"\"ConfirmationType\"", "\": \""}, 
                   "RowDefault"], "SummaryItemAnnotation"], 
                 "\[InvisibleSpace]", 
                 TagBox[
                  TagBox["\"ConfirmAssert\"", HoldForm], "SummaryItem"]}]}, {
               RowBox[{
                 TagBox[
                  TemplateBox[{"\"Expression\"", "\": \""}, "RowDefault"], 
                  "SummaryItemAnnotation"], "\[InvisibleSpace]", 
                 TagBox[
                  TagBox["False", HoldForm], "SummaryItem"]}]}, {
               RowBox[{
                 TagBox[
                  TemplateBox[{"\"Information\"", "\": \""}, "RowDefault"], 
                  "SummaryItemAnnotation"], "\[InvisibleSpace]", 
                 TagBox[
                  TagBox[
                  "\"a BIP39 mnemonic is completed from 11, 14, 17, 20 or 23 \
leading words.\"", HoldForm], "SummaryItem"]}]}, {
               RowBox[{
                 TagBox[
                  TemplateBox[{"\"Test\"", "\": \""}, "RowDefault"], 
                  "SummaryItemAnnotation"], "\[InvisibleSpace]", 
                 TagBox[
                  TagBox["False", HoldForm], "SummaryItem"]}]}, {
               RowBox[{
                 TagBox[
                  TemplateBox[{"\"HeldTest\"", "\": \""}, "RowDefault"], 
                  "SummaryItemAnnotation"], "\[InvisibleSpace]", 
                 TagBox[
                  TagBox[
                   RowBox[{"Hold", "[", 
                    RowBox[{"MemberQ", "[", 
                    
                    RowBox[{
                    "WolframInstitute`Puzzles`Seeds`BIP39`Private`\
bip39WordCounts", ",", 
                    "WolframInstitute`Puzzles`Seeds`BIP39`Private`count$\
388850"}], "]"}], "]"}], HoldForm], "SummaryItem"]}]}}, 
             GridBoxAlignment -> {
              "Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, AutoDelete -> 
             False, GridBoxItemSize -> {
              "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
             GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}},
              BaseStyle -> {
              ShowStringCharacters -> False, NumberMarks -> False, 
               PrintPrecision -> 3, ShowSyntaxStyles -> False}]}}, 
          GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, 
          AutoDelete -> False, 
          GridBoxItemSize -> {
           "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
          BaselinePosition -> {1, 1}]}, 
       Dynamic[Typeset`open$$], ImageSize -> Automatic]},
     "SummaryPanel"],
    DynamicModuleValues:>{}], "]"}],
  Failure[
  "ConfirmationFailed", <|
   "MessageTemplate" -> 
    "a BIP39 mnemonic is completed from 11, 14, 17, 20 or 23 leading words.", 
    "MessageParameters" -> {}, "ConfirmationType" -> "ConfirmAssert", 
    "Expression" :> False, "Information" -> 
    "a BIP39 mnemonic is completed from 11, 14, 17, 20 or 23 leading words.", 
    "Test" :> False, "HeldTest" -> Hold[
      MemberQ[
      WolframInstitute`Puzzles`Seeds`BIP39`Private`bip39WordCounts, 
       WolframInstitute`Puzzles`Seeds`BIP39`Private`count$388850]]|>],
  Editable->False,
  SelectWithContents->True,
  Selectable->False]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"ec96b1c8-efc0-4202-9fcb-50dc1336d774"]
}, Open  ]]
}, Open  ]]
}, Closed]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "11255981-07c0-4982-b0d1-cda846aff1b9"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"501b6253-d269-4fcd-8af2-5bfa792baaf0"],
 "Applications",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(2)", "ExampleCount",ExpressionUUID->
  "3e547628-b0d7-412f-ac2c-d6c0698bd937"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->258228157,ExpressionUUID->"a9916c66-2bc0-43e0-b4e0-a865c6117ff8"],

Cell["Every completion really does give a well-formed mnemonic:", \
"ExampleText",ExpressionUUID->"9cf0e061-65ca-4921-8e85-3bb26451f9ee"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"AllTrue", "[", 
  RowBox[{
   RowBox[{
   "BIP39FinalWords", 
    "[", "\"\<legal winner thank year wave sausage worth useful legal winner \
thank\>\"", "]"}], ",", " ", 
   RowBox[{
    RowBox[{"BIP39MnemonicQ", "[", 
     RowBox[{"\"\<legal winner thank year wave sausage worth useful legal \
winner thank \>\"", " ", "<>", " ", "#"}], "]"}], " ", "&"}]}], 
  "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"d576b19e-51bf-45ab-b12f-6662866da7fc"],

Cell[BoxData["True"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"ad5ead00-9a6b-4136-9f68-cdb9aa396694"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "f06506e5-03ce-4fe1-ba70-b05b2c0615b9"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"aca75608-7674-4582-\
93d2-e27cb7b895b6"],

Cell["\<\
Recovering a phrase whose last word was lost means deriving 128 seeds, not \
2048:\
\>", "ExampleText",ExpressionUUID->"17d0a5a4-1b72-40b2-ac51-f05213f5e595"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"Length", "[", 
  RowBox[{"Map", "[", 
   RowBox[{
    RowBox[{"Function", "[", 
     RowBox[{"w", ",", " ", 
      RowBox[{"BIP39Seed", "[", 
       RowBox[{"\"\<legal winner thank year wave sausage worth useful legal \
winner thank \>\"", " ", "<>", " ", "w"}], "]"}]}], "]"}], ",", " ", 
    RowBox[{
    "BIP39FinalWords", 
     "[", "\"\<legal winner thank year wave sausage worth useful legal winner \
thank\>\"", "]"}]}], "]"}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"454f8ff1-79cc-4812-a2ce-cd2a968b65ca"],

Cell[BoxData["128"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"692e193f-89c6-4559-8571-1585beb1e8d3"]
}, Open  ]]
}, Open  ]]
}, Closed]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "c252d9af-aaa2-4c56-a97a-9a32233052fe"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"a9b86a68-687a-417b-801b-5f041c871a72"],
 "Properties & Relations",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(2)", "ExampleCount",ExpressionUUID->
  "522b6193-36bd-49fc-a007-889701ebba37"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->2123667759,ExpressionUUID->"f85c72cb-7370-4e04-a4aa-3a7f5e828d73"],

Cell["\<\
The construction agrees with the exhaustive filter, and is faster:\
\>", "ExampleText",ExpressionUUID->"20b65217-4e08-4a5d-bea6-bc1b6f023f23"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{
  RowBox[{
  "BIP39FinalWords", 
   "[", "\"\<legal winner thank year wave sausage worth useful legal winner \
thank\>\"", "]"}], " ", "===", " ", 
  RowBox[{"Select", "[", 
   RowBox[{"$BIP39EnglishWords", ",", " ", 
    RowBox[{
     RowBox[{"BIP39MnemonicQ", "[", 
      RowBox[{"\"\<legal winner thank year wave sausage worth useful legal \
winner thank \>\"", " ", "<>", " ", "#"}], "]"}], " ", "&"}]}], 
   "]"}]}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"99903032-d5de-4cf5-b7a3-2b8bf6716c81"],

Cell[BoxData["True"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"3d220967-4fe1-4aea-87ff-676c01866e45"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "41b5ec27-19d7-496c-990d-234ed9e23872"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"bf8ea876-6f2b-4691-\
83d9-6c1d57917a32"],

Cell["\<\
One in sixteen of the wordlist completes a 12-word prefix, which is the four \
checksum bits:\
\>", "ExampleText",ExpressionUUID->"49281354-414a-472e-9103-15a7b5833647"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{
  RowBox[{"Length", "[", 
   RowBox[{
   "BIP39FinalWords", 
    "[", "\"\<abandon abandon abandon abandon abandon abandon abandon abandon \
abandon abandon abandon\>\"", "]"}], "]"}], "/", 
  RowBox[{"Length", "[", "$BIP39EnglishWords", "]"}]}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"59d178c8-fb57-4fc0-b429-bf181ced44d9"],

Cell[BoxData[
 FractionBox["1", "16"]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"b121b769-ff5d-48ba-a930-3b061161e261"]
}, Open  ]]
}, Open  ]]
}, Closed]],

Cell[CellGroupData[{

Cell[TextData[{
 Cell[BoxData[
  DynamicBox[ToBoxes[
    If[CurrentValue[
       EvaluationCell[], "CellGroupOpen"] =!= Closed, 
     Style[
      Graphics[{
        Thickness[0.18], 
        RGBColor[0.8509803921568627, 0.396078431372549, 0], 
        Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
       PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
      0.68 Inherited], 
     Rotate[
      Style[
       Graphics[{
         Thickness[0.18], 
         RGBColor[0.8509803921568627, 0.396078431372549, 0], 
         Line[{{-1.8, 0.5}, {0, 0}, {1.8, 0.5}}]}, AspectRatio -> 1, 
        PlotRange -> {{-3, 4}, {-1, 1}}, ImageSize -> 20], Magnification -> 
       0.68 Inherited], Rational[1, 2] Pi, {-1.65, -1}]]]]],ExpressionUUID->
  "c2164f47-5627-4776-aaba-d6fed00db7d8"],
 Cell[BoxData[
  TemplateBox[{1},
   "Spacer1"]],ExpressionUUID->"59e64080-9c3c-4985-b512-88f7273753a8"],
 "Possible Issues",
 "\[NonBreakingSpace]\[NonBreakingSpace]",
 Cell["(2)", "ExampleCount",ExpressionUUID->
  "6c69ea6a-9412-4814-a67b-c3119d7571d9"]
}], "ExampleSection", "ExampleSection",
 WholeCellGroupOpener->True,
 CacheGraphics->False,
 CellID->1305812373,ExpressionUUID->"f1ffe76f-861f-4914-9f99-d0bf72fe82dd"],

Cell["\<\
Only the LAST word is enumerated. A phrase missing a word in the middle is a \
different, much larger search:\
\>", "ExampleText",ExpressionUUID->"50bb350f-cfc0-427f-89d2-2827a8645188"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"BIP39FinalWords", 
  "[", "\"\<abandon abandon abandon abandon abandon abandon abandon abandon \
abandon abandon\>\"", "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"b654b7fc-e78f-43a9-8236-07250bd88b95"],

Cell[BoxData[
 InterpretationBox[
  RowBox[{
   TagBox["Failure",
    "SummaryHead"], "[", 
   DynamicModuleBox[{Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, 
    
    TemplateBox[{
      PaneSelectorBox[{False -> GridBox[{{
            PaneBox[
             ButtonBox[
              DynamicBox[
               FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxOpener"]], 
              ButtonFunction :> (Typeset`open$$ = True), Appearance -> None, 
              BaseStyle -> {}, Evaluator -> Automatic, Method -> 
              "Preemptive"], Alignment -> {Center, Center}, ImageSize -> 
             Dynamic[{
               Automatic, 
                3.5 (CurrentValue["FontCapHeight"]/AbsoluteCurrentValue[
                 Magnification])}]], 
            FrameBox[
             StyleBox["\"\[WarningSign]\"", 
              Directive["Message", 35], StripOnInput -> False], 
             ContentPadding -> False, FrameStyle -> None, 
             FrameMargins -> {{0, 0}, {0, 0}}, StripOnInput -> False], 
            GridBox[{{
               TagBox[
                GridBox[{{
                   TagBox["\"Message: \"", "SummaryItemAnnotation"], 
                   "\[InvisibleSpace]", 
                   TagBox[
                   "\"a BIP39 mnemonic is completed from 11, 14, 17, 20 or 23 \
leading words.\"", "SummaryItem"]}}, 
                 GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, 
                 GridBoxAlignment -> {"Columns" -> {{Left}}}, 
                 GridBoxSpacings -> {"Columns" -> {{0}}}], "SummaryItem"]}, {
               TagBox[
                GridBox[{{
                   TagBox["\"Tag: \"", "SummaryItemAnnotation"], 
                   "\[InvisibleSpace]", 
                   TagBox["\"ConfirmationFailed\"", "SummaryItem"]}}, 
                 GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, 
                 GridBoxAlignment -> {"Columns" -> {{Left}}}, 
                 GridBoxSpacings -> {"Columns" -> {{0}}}], "SummaryItem"]}}, 
             GridBoxAlignment -> {
              "Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, AutoDelete -> 
             False, GridBoxItemSize -> {
              "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
             GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}},
              BaseStyle -> {
              ShowStringCharacters -> False, NumberMarks -> False, 
               PrintPrecision -> 3, ShowSyntaxStyles -> False}]}}, 
          GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, 
          AutoDelete -> False, 
          GridBoxItemSize -> {
           "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
          BaselinePosition -> {1, 1}], True -> GridBox[{{
            PaneBox[
             ButtonBox[
              DynamicBox[
               FEPrivate`FrontEndResource["FEBitmaps", "SummaryBoxCloser"]], 
              ButtonFunction :> (Typeset`open$$ = False), Appearance -> None, 
              BaseStyle -> {}, Evaluator -> Automatic, Method -> 
              "Preemptive"], Alignment -> {Center, Center}, ImageSize -> 
             Dynamic[{
               Automatic, 
                3.5 (CurrentValue["FontCapHeight"]/AbsoluteCurrentValue[
                 Magnification])}]], 
            FrameBox[
             StyleBox["\"\[WarningSign]\"", 
              Directive["Message", 35], StripOnInput -> False], 
             ContentPadding -> False, FrameStyle -> None, 
             FrameMargins -> {{0, 0}, {0, 0}}, StripOnInput -> False], 
            GridBox[{{
               TagBox[
                GridBox[{{
                   TagBox["\"Message: \"", "SummaryItemAnnotation"], 
                   "\[InvisibleSpace]", 
                   TagBox[
                   "\"a BIP39 mnemonic is completed from 11, 14, 17, 20 or 23 \
leading words.\"", "SummaryItem"]}}, 
                 GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, 
                 GridBoxAlignment -> {"Columns" -> {{Left}}}, 
                 GridBoxSpacings -> {"Columns" -> {{0}}}], "SummaryItem"]}, {
               TagBox[
                GridBox[{{
                   TagBox["\"Tag: \"", "SummaryItemAnnotation"], 
                   "\[InvisibleSpace]", 
                   TagBox["\"ConfirmationFailed\"", "SummaryItem"]}}, 
                 GridBoxItemSize -> {"Columns" -> {6.5, All, Automatic}}, 
                 GridBoxAlignment -> {"Columns" -> {{Left}}}, 
                 GridBoxSpacings -> {"Columns" -> {{0}}}], "SummaryItem"]}, {
               RowBox[{
                 TagBox[
                  
                  TemplateBox[{"\"ConfirmationType\"", "\": \""}, 
                   "RowDefault"], "SummaryItemAnnotation"], 
                 "\[InvisibleSpace]", 
                 TagBox[
                  TagBox["\"ConfirmAssert\"", HoldForm], "SummaryItem"]}]}, {
               RowBox[{
                 TagBox[
                  TemplateBox[{"\"Expression\"", "\": \""}, "RowDefault"], 
                  "SummaryItemAnnotation"], "\[InvisibleSpace]", 
                 TagBox[
                  TagBox["False", HoldForm], "SummaryItem"]}]}, {
               RowBox[{
                 TagBox[
                  TemplateBox[{"\"Information\"", "\": \""}, "RowDefault"], 
                  "SummaryItemAnnotation"], "\[InvisibleSpace]", 
                 TagBox[
                  TagBox[
                  "\"a BIP39 mnemonic is completed from 11, 14, 17, 20 or 23 \
leading words.\"", HoldForm], "SummaryItem"]}]}, {
               RowBox[{
                 TagBox[
                  TemplateBox[{"\"Test\"", "\": \""}, "RowDefault"], 
                  "SummaryItemAnnotation"], "\[InvisibleSpace]", 
                 TagBox[
                  TagBox["False", HoldForm], "SummaryItem"]}]}, {
               RowBox[{
                 TagBox[
                  TemplateBox[{"\"HeldTest\"", "\": \""}, "RowDefault"], 
                  "SummaryItemAnnotation"], "\[InvisibleSpace]", 
                 TagBox[
                  TagBox[
                   RowBox[{"Hold", "[", 
                    RowBox[{"MemberQ", "[", 
                    
                    RowBox[{
                    "WolframInstitute`Puzzles`Seeds`BIP39`Private`\
bip39WordCounts", ",", 
                    "WolframInstitute`Puzzles`Seeds`BIP39`Private`count$\
403987"}], "]"}], "]"}], HoldForm], "SummaryItem"]}]}}, 
             GridBoxAlignment -> {
              "Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, AutoDelete -> 
             False, GridBoxItemSize -> {
              "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
             GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}},
              BaseStyle -> {
              ShowStringCharacters -> False, NumberMarks -> False, 
               PrintPrecision -> 3, ShowSyntaxStyles -> False}]}}, 
          GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}}, 
          AutoDelete -> False, 
          GridBoxItemSize -> {
           "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
          BaselinePosition -> {1, 1}]}, 
       Dynamic[Typeset`open$$], ImageSize -> Automatic]},
     "SummaryPanel"],
    DynamicModuleValues:>{}], "]"}],
  Failure[
  "ConfirmationFailed", <|
   "MessageTemplate" -> 
    "a BIP39 mnemonic is completed from 11, 14, 17, 20 or 23 leading words.", 
    "MessageParameters" -> {}, "ConfirmationType" -> "ConfirmAssert", 
    "Expression" :> False, "Information" -> 
    "a BIP39 mnemonic is completed from 11, 14, 17, 20 or 23 leading words.", 
    "Test" :> False, "HeldTest" -> Hold[
      MemberQ[
      WolframInstitute`Puzzles`Seeds`BIP39`Private`bip39WordCounts, 
       WolframInstitute`Puzzles`Seeds`BIP39`Private`count$403987]]|>],
  Editable->False,
  SelectWithContents->True,
  Selectable->False]], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"d6bdea22-1490-4809-a9f0-bd804830d456"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 InterpretationBox[Cell[
  "\t", "ExampleDelimiter",ExpressionUUID->
   "4ba83649-fa67-4955-9028-e31307276001"],
  $Line = 0; Null]], "ExampleDelimiter",ExpressionUUID->"3f001261-6d3e-49d0-\
a9fb-cb5a9fe95e69"],

Cell["\<\
A leading word outside the wordlist makes the attempt fail rather than \
returning nothing:\
\>", "ExampleText",ExpressionUUID->"d6b7497f-6d89-4f46-bc07-e04d4deb7743"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"FailureQ", "[", 
  RowBox[{
  "BIP39FinalWords", 
   "[", "\"\<abandon abandon abandon abandon abandon abandon abandon abandon \
abandon abandon zzzz\>\"", "]"}], "]"}]], "Input",
 CellProlog:>Needs["WolframInstitute`Puzzles`"],
 CellLabel->"In[1]:=",ExpressionUUID->"aca4caf6-f8ca-4157-bd5b-345c44e704a5"],

Cell[BoxData["True"], "Output",
 CellLabel->"Out[1]= ",ExpressionUUID->"44cf43f5-b123-4c76-b350-71b4f5a1da19"]
}, Open  ]]
}, Open  ]]
}, Closed]]
}, Open  ]],

Cell[BoxData[GridBox[{
   {
    DynamicBox[FEPrivate`ImportImage[
      FrontEnd`FileName[{"Documentation", "FooterIcons"}, 
       "RelatedFunction.png"]]], GridBox[{
      {
       StyleBox[
        RowBox[{"See", " ", "Also"}], "SeeAlsoSection"]},
      {Cell[TextData[{
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["BIP39MnemonicQ"]], 
           "paclet:WolframInstitute/Puzzles/ref/BIP39MnemonicQ", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "af000661-481f-4501-b292-ca171eeae29d"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["BIP39Entropy"]], 
           "paclet:WolframInstitute/Puzzles/ref/BIP39Entropy", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "320d7fa6-a00a-4923-bd09-870b0e2fbca7"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["BIP39Mnemonic"]], 
           "paclet:WolframInstitute/Puzzles/ref/BIP39Mnemonic", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "ceffb56f-3306-43bb-90e6-f879b6791569"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["BIP39Seed"]], 
           "paclet:WolframInstitute/Puzzles/ref/BIP39Seed", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "18a7c89f-8f97-4e31-b2bb-b11fe3ca3cd9"],
        "\[NonBreakingSpace]",
        StyleBox[
        "\[MediumSpace]\[FilledVerySmallSquare]\[MediumSpace]", 
         "InlineSeparator"],
        " ",
        Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["$BIP39EnglishWords"]], 
           "paclet:WolframInstitute/Puzzles/ref/$BIP39EnglishWords", 
           "WolframInstitute/Puzzles Package Symbol"},
          "PackageLink",
          BaseStyle->"InlineFormula"]], "InlineFormula",
         FontFamily->"Source Sans Pro",ExpressionUUID->
         "1773128a-c2fc-46cc-afbe-0d7fa35dba2f"]
       }], "SeeAlso",ExpressionUUID->"cf287417-5ea0-4f28-876e-4e6243c5833d"]}
     }]}
  }]], "SeeAlsoSection",ExpressionUUID->"1663f945-7ad3-4573-b872-\
2bf4262f65cf"],

Cell[BoxData[GridBox[{
   {
    DynamicBox[FEPrivate`ImportImage[
      FrontEnd`FileName[{"Documentation", "FooterIcons"}, 
       "RelatedGuide.png"]]], GridBox[{
      {
       StyleBox[
        RowBox[{"Related", " ", "Guides"}], "MoreAboutSection"]},
      {
       RowBox[{"\[FilledVerySmallSquare]", Cell[BoxData[
         TemplateBox[{
           Cell[
            TextData["Seeds"]], "paclet:WolframInstitute/Puzzles/guide/Seeds"},
          "RefLinkPlain",
          BaseStyle->{"MoreAbout"}]], "MoreAbout",ExpressionUUID->
         "92bb914b-6699-4a16-b0d2-d1119537809b"]}]}
     }]}
  }]], "MoreAboutSection",ExpressionUUID->"15048176-9a5b-40c8-afd4-\
68f561be836a"],

Cell[" ", "FooterCell",ExpressionUUID->"ad8ce9cb-60af-4000-b1e8-75197a55d8d2"]
},
Saveable->False,
ScreenStyleEnvironment->"Working",
WindowSize->{900, 830},
WindowMargins->{{0, Automatic}, {Automatic, 0}},
WindowTitle->"BIP39FinalWords",
TaggingRules->{
 "ModificationHighlight" -> False, "ColorType" -> "", "LinkTrails" -> "", 
  "ExampleCounter" -> 1, 
  "Openers" -> {
   "PrimaryExamplesSection" -> Open, "ExampleSection" -> {"0" -> Open}, 
    "AllOptsTable" -> Closed}, "NewStyles" -> True, 
  "CitationPopupData" -> $Failed, "ShowCitation" -> False, "HasOptions" -> 
  True, "RootCaptions" -> "", "HeaderCoreAreaLink" -> {}, 
  "Metadata" -> {
   "built" -> "{2026, 8, 27, 0, 11, 26.843673}", 
    "history" -> {"XX", "", "", ""}, "context" -> "WolframInstitute`Puzzles`",
     "keywords" -> {}, "specialkeywords" -> {}, 
    "tutorialcollectionlinks" -> {}, "index" -> True, "label" -> 
    "Wolfram Institute/ Puzzles Symbol", "language" -> "en", "paclet" -> 
    "WolframInstitute/Puzzles", "status" -> "None", "summary" -> 
    "PackageLink[BIP39FinalWords, paclet : \
WolframInstitute/Puzzles/ref/BIP39FinalWords, WolframInstitute/Puzzles \
Package Symbol][{word_ 1 $, word_ 2 $, ...}] gives the words of \
PackageLink[$BIP39EnglishWords, paclet : \
WolframInstitute/Puzzles/ref/$BIP39EnglishWords, WolframInstitute/Puzzles \
Package Symbol] that complete the given leading words of a BIP39 English \
mnemonic to a checksum-valid one. PackageLink[BIP39FinalWords, paclet : \
WolframInstitute/Puzzles/ref/BIP39FinalWords, WolframInstitute/Puzzles \
Package Symbol][  word Subscript[_1, word$_2 $ ...] ] takes the leading words \
as a sentence.", "synonyms" -> {}, "tabletags" -> {}, "title" -> 
    "BIP39FinalWords", "titlemodifier" -> "", "metadescription" -> "", 
    "windowtitle" -> "BIP39FinalWords", "type" -> "Symbol", "uri" -> 
    "WolframInstitute/Puzzles/ref/BIP39FinalWords", "WorkflowDockedCell" -> 
    ""}, "SearchTextTranslated" -> ""},
CellContext->CellGroup,
FrontEndVersion->"15.0 for Mac OS X ARM (64-bit) (May 19, 2026)",
StyleDefinitions->FrontEnd`FileName[{"Wolfram"}, "Reference.nb"],
ExpressionUUID->"09b82f2e-0983-4a74-9d10-00db38af70e4"
]
(* End of Notebook Content *)

(* Internal cache information *)
(*CellTagsOutline
CellTagsIndex->{
 "TextAnnotation"->{
  Cell[16573, 454, 365, 9, 70, "ExampleText",ExpressionUUID->"ff28d391-1aa0-4666-8e0d-d1013652881a",
   CellTags->"TextAnnotation"]}
 }
*)
(*CellTagsIndex
CellTagsIndex->{
 {"TextAnnotation", 55614, 1451}
 }
*)
(*NotebookFileOutline
Notebook[{
Cell[583, 21, 5795, 142, 70, "AnchorBarGrid",ExpressionUUID->"9c73edc2-0acf-4390-8b63-0ff0c20d2028",
 CellID->1],
Cell[6381, 165, 107, 0, 70, "ContextNameCell",ExpressionUUID->"9bc132ec-230f-4711-ae9f-c9e06041eccd"],
Cell[CellGroupData[{
Cell[6513, 169, 558, 14, 70, "ObjectNameGrid",ExpressionUUID->"4832781e-d604-4c4d-95ee-f9059b917484"],
Cell[7074, 185, 2462, 67, 70, "Usage",ExpressionUUID->"42dc3a86-d4a1-4589-882d-cfa87ff81f39"]
}, Open  ]],
Cell[CellGroupData[{
Cell[9573, 257, 1444, 34, 70, "NotesSection",ExpressionUUID->"c5a902ec-298a-4b4e-96fb-e4e6859cf992",
 CellGroupingRules->{"SectionGrouping", 50},
 CellID->1710561191],
Cell[11020, 293, 531, 12, 70, "Notes",ExpressionUUID->"fadfd3d1-1284-4f90-a3d8-bdbcdee45c0b"],
Cell[11554, 307, 174, 3, 70, "Notes",ExpressionUUID->"53e876dd-c3e0-4f53-9fcb-e6c045caaac4"],
Cell[11731, 312, 778, 23, 70, "Notes",ExpressionUUID->"4be37883-47e8-45c6-9146-b8fd87985b95"],
Cell[12512, 337, 251, 4, 70, "Notes",ExpressionUUID->"67397b3b-ed06-4ad6-af2a-7c7ae2e995f8"],
Cell[12766, 343, 802, 24, 70, "Notes",ExpressionUUID->"180fd255-0d7c-4398-a27a-7bb6d81bf0ef"]
}, Closed]],
Cell[13583, 370, 80, 0, 70, "PageDelimiter",ExpressionUUID->"1b106af4-b8f1-465d-a11b-0d4a16bd6667"],
Cell[CellGroupData[{
Cell[13688, 374, 1402, 37, 70, "PrimaryExamplesSection",ExpressionUUID->"5c95ff9a-b7f6-45dd-b525-63ffa33d5f6c",
 CellID->1038354748],
Cell[15093, 413, 216, 4, 70, "Input",ExpressionUUID->"2b2d4389-2adf-4365-a005-d19a0dfd0859",
 CellID->1969679695],
Cell[CellGroupData[{
Cell[15334, 421, 1236, 31, 70, "ExampleSection",ExpressionUUID->"935fe54a-9784-4917-b8d7-c42985d46f0d",
 CellID->1176134114],
Cell[16573, 454, 365, 9, 70, "ExampleText",ExpressionUUID->"ff28d391-1aa0-4666-8e0d-d1013652881a",
 CellTags->"TextAnnotation"],
Cell[CellGroupData[{
Cell[16963, 467, 361, 8, 70, "Input",ExpressionUUID->"849d903a-4703-4893-8d19-e2cf2acdae93"],
Cell[17327, 477, 417, 7, 70, "Output",ExpressionUUID->"012254cc-4bd5-49d5-a067-0b992ebbaecc"]
}, Open  ]],
Cell[CellGroupData[{
Cell[17781, 489, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"70bde9ea-1b20-4a5e-81a6-1bbaf1f1a243"],
Cell[18008, 496, 162, 2, 70, "ExampleText",ExpressionUUID->"0a62a5a1-f236-4ed9-b326-c2928c42dfda"],
Cell[CellGroupData[{
Cell[18195, 502, 331, 7, 70, "Input",ExpressionUUID->"f910afbb-d7fa-4c6a-afcc-a1236762c9c8"],
Cell[18529, 511, 109, 1, 70, "Output",ExpressionUUID->"90ae8ccf-0be9-459e-8526-f0e07627f6c8"]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[18687, 518, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"def6fe32-d7a0-4e75-8ea8-ea0070d21d6c"],
Cell[18914, 525, 174, 3, 70, "ExampleText",ExpressionUUID->"36c7b5a3-d3a1-40d2-98aa-550a0703210a"],
Cell[CellGroupData[{
Cell[19113, 532, 357, 8, 70, "Input",ExpressionUUID->"1de7a4c7-9658-49db-9bb9-b42e8149747e"],
Cell[19473, 542, 110, 1, 70, "Output",ExpressionUUID->"44687aaf-1269-4fa5-bf4f-a10afcb4e7c8"]
}, Open  ]]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[19644, 550, 1227, 31, 70, "ExampleSection",ExpressionUUID->"97dc9d99-40a3-41be-882d-c19aa749be6b",
 CellID->1293636265],
Cell[20874, 583, 160, 2, 70, "ExampleText",ExpressionUUID->"e5edfd10-463b-4b02-9371-ab9248520e28"],
Cell[CellGroupData[{
Cell[21059, 589, 354, 6, 70, "Input",ExpressionUUID->"bdb2b774-b043-44f4-9df2-323ee76f6fb3"],
Cell[21416, 597, 320, 5, 70, "Output",ExpressionUUID->"b4f0691e-1075-4543-994c-6f048e7dff72"]
}, Open  ]],
Cell[CellGroupData[{
Cell[21773, 607, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"d8636818-c2b6-4ee8-8adb-ceeaa1671625"],
Cell[22000, 614, 119, 0, 70, "ExampleText",ExpressionUUID->"aafe8448-7dcd-40ec-b023-003713e50cb9"],
Cell[CellGroupData[{
Cell[22144, 618, 316, 7, 70, "Input",ExpressionUUID->"c112973c-ead4-4bff-9eab-9441ad84c38f"],
Cell[22463, 627, 108, 1, 70, "Output",ExpressionUUID->"e4a208da-9fbe-466f-8b5a-0c9f5a2e98bb"]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[22620, 634, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"22eb876d-437f-4f27-9264-448559a9e446"],
Cell[22847, 641, 132, 0, 70, "ExampleText",ExpressionUUID->"8a4d84a3-dbe0-4baf-8f9c-ba4d6aaf75e5"],
Cell[CellGroupData[{
Cell[23004, 645, 560, 15, 70, "Input",ExpressionUUID->"4185b862-b981-45d7-9879-71af21097ff2"],
Cell[23567, 662, 189, 4, 70, "Output",ExpressionUUID->"c6bc0c66-bd86-4b2f-888c-2e28d8f489f7"]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[23805, 672, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"6bc67f10-4b79-4f7e-ac87-84a32366e81c"],
Cell[24032, 679, 165, 3, 70, "ExampleText",ExpressionUUID->"dc1714fc-0997-44d4-9d6f-7bc1cd0f3bea"],
Cell[CellGroupData[{
Cell[24222, 686, 228, 4, 70, "Input",ExpressionUUID->"7b77838b-ff74-49d3-9e40-a0157d3aacd7"],
Cell[24453, 692, 7915, 164, 70, "Output",ExpressionUUID->"ec96b1c8-efc0-4202-9fcb-50dc1336d774"]
}, Open  ]]
}, Open  ]]
}, Closed]],
Cell[CellGroupData[{
Cell[32429, 863, 1233, 31, 70, "ExampleSection",ExpressionUUID->"a9916c66-2bc0-43e0-b4e0-a865c6117ff8",
 CellID->258228157],
Cell[33665, 896, 137, 1, 70, "ExampleText",ExpressionUUID->"9cf0e061-65ca-4921-8e85-3bb26451f9ee"],
Cell[CellGroupData[{
Cell[33827, 901, 529, 13, 70, "Input",ExpressionUUID->"d576b19e-51bf-45ab-b12f-6662866da7fc"],
Cell[34359, 916, 110, 1, 70, "Output",ExpressionUUID->"ad5ead00-9a6b-4136-9f68-cdb9aa396694"]
}, Open  ]],
Cell[CellGroupData[{
Cell[34506, 922, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"aca75608-7674-4582-93d2-e27cb7b895b6"],
Cell[34733, 929, 168, 3, 70, "ExampleText",ExpressionUUID->"17d0a5a4-1b72-40b2-ac51-f05213f5e595"],
Cell[CellGroupData[{
Cell[34926, 936, 602, 14, 70, "Input",ExpressionUUID->"454f8ff1-79cc-4812-a2ce-cd2a968b65ca"],
Cell[35531, 952, 109, 1, 70, "Output",ExpressionUUID->"692e193f-89c6-4559-8571-1585beb1e8d3"]
}, Open  ]]
}, Open  ]]
}, Closed]],
Cell[CellGroupData[{
Cell[35701, 960, 1244, 31, 70, "ExampleSection",ExpressionUUID->"f85c72cb-7370-4e04-a4aa-3a7f5e828d73",
 CellID->2123667759],
Cell[36948, 993, 152, 2, 70, "ExampleText",ExpressionUUID->"20b65217-4e08-4a5d-bea6-bc1b6f023f23"],
Cell[CellGroupData[{
Cell[37125, 999, 582, 14, 70, "Input",ExpressionUUID->"99903032-d5de-4cf5-b7a3-2b8bf6716c81"],
Cell[37710, 1015, 110, 1, 70, "Output",ExpressionUUID->"3d220967-4fe1-4aea-87ff-676c01866e45"]
}, Open  ]],
Cell[CellGroupData[{
Cell[37857, 1021, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"bf8ea876-6f2b-4691-83d9-6c1d57917a32"],
Cell[38084, 1028, 179, 3, 70, "ExampleText",ExpressionUUID->"49281354-414a-472e-9103-15a7b5833647"],
Cell[CellGroupData[{
Cell[38288, 1035, 407, 9, 70, "Input",ExpressionUUID->"59d178c8-fb57-4fc0-b429-bf181ced44d9"],
Cell[38698, 1046, 128, 2, 70, "Output",ExpressionUUID->"b121b769-ff5d-48ba-a930-3b061161e261"]
}, Open  ]]
}, Open  ]]
}, Closed]],
Cell[CellGroupData[{
Cell[38887, 1055, 1237, 31, 70, "ExampleSection",ExpressionUUID->"f1ffe76f-861f-4914-9f99-d0bf72fe82dd",
 CellID->1305812373],
Cell[40127, 1088, 195, 3, 70, "ExampleText",ExpressionUUID->"50bb350f-cfc0-427f-89d2-2827a8645188"],
Cell[CellGroupData[{
Cell[40347, 1095, 286, 5, 70, "Input",ExpressionUUID->"b654b7fc-e78f-43a9-8236-07250bd88b95"],
Cell[40636, 1102, 7915, 164, 70, "Output",ExpressionUUID->"d6bdea22-1490-4809-a9f0-bd804830d456"]
}, Open  ]],
Cell[CellGroupData[{
Cell[48588, 1271, 224, 5, 70, "ExampleDelimiter",ExpressionUUID->"3f001261-6d3e-49d0-a9fb-cb5a9fe95e69"],
Cell[48815, 1278, 177, 3, 70, "ExampleText",ExpressionUUID->"d6b7497f-6d89-4f46-bc07-e04d4deb7743"],
Cell[CellGroupData[{
Cell[49017, 1285, 330, 7, 70, "Input",ExpressionUUID->"aca4caf6-f8ca-4157-bd5b-345c44e704a5"],
Cell[49350, 1294, 110, 1, 70, "Output",ExpressionUUID->"44cf43f5-b123-4c76-b350-71b4f5a1da19"]
}, Open  ]]
}, Open  ]]
}, Closed]]
}, Open  ]],
Cell[49511, 1301, 3122, 82, 70, "SeeAlsoSection",ExpressionUUID->"1663f945-7ad3-4573-b872-2bf4262f65cf"],
Cell[52636, 1385, 678, 18, 70, "MoreAboutSection",ExpressionUUID->"15048176-9a5b-40c8-afd4-68f561be836a"],
Cell[53317, 1405, 78, 0, 70, "FooterCell",ExpressionUUID->"ad8ce9cb-60af-4000-b1e8-75197a55d8d2"]
}
]
*)

(* End of internal cache information *)

