|
|
|
@ -0,0 +1,732 @@
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"spec": "0.11",
|
|
|
|
|
|
|
|
"description": "The key of words (spec §38.1): the words of a text, after NFD, without U+0300 to U+036F, in simple lower case of Unicode 18.0.0 and split by the spaces of the list; what a writer refuses; and the identity, PBKDF2-HMAC-SHA256 of 600000 rounds, for a chain hash, a round and a capsule_id. See testdata/README.md.",
|
|
|
|
|
|
|
|
"normalize": [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "the words of the vector of §38.1",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "accents, upper case and runs of spaces",
|
|
|
|
|
|
|
|
"text": " Ábaco ÁRBOL\tniño ΣΑΣ İ ",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"abaco",
|
|
|
|
|
|
|
|
"arbol",
|
|
|
|
|
|
|
|
"nino",
|
|
|
|
|
|
|
|
"σασ",
|
|
|
|
|
|
|
|
"i"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "«Ábaco ÁRBOL» of §38.1",
|
|
|
|
|
|
|
|
"text": "Ábaco ÁRBOL",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"abaco",
|
|
|
|
|
|
|
|
"arbol"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "«abaco arbol» of §38.1",
|
|
|
|
|
|
|
|
"text": "abaco arbol",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"abaco",
|
|
|
|
|
|
|
|
"arbol"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "«ábaco árbol» of §38.1",
|
|
|
|
|
|
|
|
"text": "ábaco árbol",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"abaco",
|
|
|
|
|
|
|
|
"arbol"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "the accents written as combining marks",
|
|
|
|
|
|
|
|
"text": "ábaco árbol",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"abaco",
|
|
|
|
|
|
|
|
"arbol"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "punctuation counts",
|
|
|
|
|
|
|
|
"text": "Perro, luna.",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro,",
|
|
|
|
|
|
|
|
"luna."
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "no text",
|
|
|
|
|
|
|
|
"text": "",
|
|
|
|
|
|
|
|
"words": []
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "only spaces",
|
|
|
|
|
|
|
|
"text": " \t ",
|
|
|
|
|
|
|
|
"words": []
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "the simple lower case of a final sigma",
|
|
|
|
|
|
|
|
"text": "ΟΔΟΣ",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"οδοσ"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "capital sharp s, lowered by its simple mapping",
|
|
|
|
|
|
|
|
"text": "STRAẞE",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"straße"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a dotless i stays",
|
|
|
|
|
|
|
|
"text": "ı",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"ı"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "the angstrom sign, whose NFD is A and a ring",
|
|
|
|
|
|
|
|
"text": "Å",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"a"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "Hangul, decomposed into jamo",
|
|
|
|
|
|
|
|
"text": "한글",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"한글"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a combining mark outside U+0300 to U+036F stays",
|
|
|
|
|
|
|
|
"text": "a⃗",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"a⃗"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "fullwidth letters are not folded to ASCII",
|
|
|
|
|
|
|
|
"text": "ABC",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"abc"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+A7CB, lowered by Unicode 18.0.0 to U+0264",
|
|
|
|
|
|
|
|
"text": "",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"ɤ"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a zero width space is not a space",
|
|
|
|
|
|
|
|
"text": "ab",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"ab"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+180E is not a space",
|
|
|
|
|
|
|
|
"text": "ab",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"ab"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a byte order mark is not a space",
|
|
|
|
|
|
|
|
"text": "ab",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"ab"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+0009 is a space",
|
|
|
|
|
|
|
|
"text": "uno\tdos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+000A is a space",
|
|
|
|
|
|
|
|
"text": "uno\ndos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+000B is a space",
|
|
|
|
|
|
|
|
"text": "uno\u000bdos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+000C is a space",
|
|
|
|
|
|
|
|
"text": "uno\fdos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+000D is a space",
|
|
|
|
|
|
|
|
"text": "uno\rdos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+0020 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+0085 is a space",
|
|
|
|
|
|
|
|
"text": "uno
dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+00A0 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+1680 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2000 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2001 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2002 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2003 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2004 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2005 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2006 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2007 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2008 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2009 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+200A is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2028 is a space",
|
|
|
|
|
|
|
|
"text": "uno\u2028dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+2029 is a space",
|
|
|
|
|
|
|
|
"text": "uno\u2029dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+202F is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+205F is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "U+3000 is a space",
|
|
|
|
|
|
|
|
"text": "uno dos",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos"
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"check": [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "six words",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "ok"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "six words with upper case and accents",
|
|
|
|
|
|
|
|
"text": "Perro LUNA casa verde trén mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "ok"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "three words",
|
|
|
|
|
|
|
|
"text": "uno dos tres",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"uno",
|
|
|
|
|
|
|
|
"dos",
|
|
|
|
|
|
|
|
"tres"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: a key of words needs at least 6 different words of 3 or more letters, not 3"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "only short words",
|
|
|
|
|
|
|
|
"text": "a b c d e f g h",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"a",
|
|
|
|
|
|
|
|
"b",
|
|
|
|
|
|
|
|
"c",
|
|
|
|
|
|
|
|
"d",
|
|
|
|
|
|
|
|
"e",
|
|
|
|
|
|
|
|
"f",
|
|
|
|
|
|
|
|
"g",
|
|
|
|
|
|
|
|
"h"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: a key of words needs at least 6 different words of 3 or more letters, not 0"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "one word six times",
|
|
|
|
|
|
|
|
"text": "perro perro perro perro perro perro",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"perro"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: a key of words needs at least 6 different words of 3 or more letters, not 1"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "short words do not count",
|
|
|
|
|
|
|
|
"text": "de la casa al mar en tren verde",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"de",
|
|
|
|
|
|
|
|
"la",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"al",
|
|
|
|
|
|
|
|
"mar",
|
|
|
|
|
|
|
|
"en",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"verde"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: a key of words needs at least 6 different words of 3 or more letters, not 4"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "five words that count and a short one",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren y",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"y"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: a key of words needs at least 6 different words of 3 or more letters, not 5"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a word of three letters counts",
|
|
|
|
|
|
|
|
"text": "sol luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"sol",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "ok"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a word of three letters that are not ASCII counts",
|
|
|
|
|
|
|
|
"text": "ñuñ luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"nun",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "ok"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "the same words in other case count once",
|
|
|
|
|
|
|
|
"text": "perro PERRO luna casa verde tren",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: a key of words needs at least 6 different words of 3 or more letters, not 5"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a zero width space, which the writer refuses",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: the words hold the invisible character U+200B"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a soft hyphen, ignorable",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: the words hold the invisible character U+00AD"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a variation selector, ignorable",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar️",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar️"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: the words hold the invisible character U+FE0F"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a byte order mark",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: the words hold the invisible character U+FEFF"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a control character",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar\u0001",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar\u0001"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: the words hold the control character U+0001"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a C1 control character",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: the words hold the control character U+009F"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "DEL",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: the words hold the control character U+007F"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "an unassigned code point",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "error",
|
|
|
|
|
|
|
|
"error": "wordkey: the words hold U+0378, unassigned in Unicode 18.0.0"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "a private use code point is assigned",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "ok"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "an emoji",
|
|
|
|
|
|
|
|
"text": "perro luna casa verde tren mar 🌍",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar",
|
|
|
|
|
|
|
|
"🌍"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"result": "ok"
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"keys": [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "the vector of §38.1",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"chain_hash": "52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971",
|
|
|
|
|
|
|
|
"round": 1000,
|
|
|
|
|
|
|
|
"capsule_id": "000102030405060708090a0b0c0d0e0f",
|
|
|
|
|
|
|
|
"key": "fceec4d8ca8de86c85a1f26ed49f82a2b38431bd0ce36db995ae7dfd49b96e41",
|
|
|
|
|
|
|
|
"recipient": "age1fqk6hflp8q5um2qrl5ckd8lu4x75rhtuncfus7f7up3v3v0zss0stdpqkr"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "the next round",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"chain_hash": "52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971",
|
|
|
|
|
|
|
|
"round": 1001,
|
|
|
|
|
|
|
|
"capsule_id": "000102030405060708090a0b0c0d0e0f",
|
|
|
|
|
|
|
|
"key": "f4faecd9cac596b1a99c399d92cb031955201e5fc0db2c5d67163b1d244ef960",
|
|
|
|
|
|
|
|
"recipient": "age1f53tt9sjxc7l635jxc2xnerssquk7dl62j6nhvtjlefjwv5elgqsy2h9ae"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "another capsule_id",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"chain_hash": "52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971",
|
|
|
|
|
|
|
|
"round": 1000,
|
|
|
|
|
|
|
|
"capsule_id": "000102030405060708090a0b0c0d0e0e",
|
|
|
|
|
|
|
|
"key": "08fe6614ea4bbcfc324c69c370d22ad5d32e09333606b565c3831fe0110d2fe2",
|
|
|
|
|
|
|
|
"recipient": "age1e2quqz6svvjqa5wrpwlkyr9362vqw8qfz43thq39977sts5wj4sqv6ep86"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "another chain hash",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"chain_hash": "8990e7a9aaed2ffed73dbd7092123d6f289930540d7651336225dc172e51b2ce",
|
|
|
|
|
|
|
|
"round": 1000,
|
|
|
|
|
|
|
|
"capsule_id": "000102030405060708090a0b0c0d0e0f",
|
|
|
|
|
|
|
|
"key": "5da2ab56a8c841ca05970470bca4c7c108543acf2e4129e6743a09c0443577ed",
|
|
|
|
|
|
|
|
"recipient": "age1zn5cqedknwdlqsts23azduere4zlugc3fvz7m0sfrhcsfpz05axswl0km6"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "round 2^53 - 1",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"perro",
|
|
|
|
|
|
|
|
"luna",
|
|
|
|
|
|
|
|
"casa",
|
|
|
|
|
|
|
|
"verde",
|
|
|
|
|
|
|
|
"tren",
|
|
|
|
|
|
|
|
"mar"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"chain_hash": "52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971",
|
|
|
|
|
|
|
|
"round": 9007199254740991,
|
|
|
|
|
|
|
|
"capsule_id": "000102030405060708090a0b0c0d0e0f",
|
|
|
|
|
|
|
|
"key": "6077e1675c84264fbe03a33abb1359520fc6f9fdb9b293603779127327bce7d4",
|
|
|
|
|
|
|
|
"recipient": "age1fjv9e2a6vd7pcr20llzsxthauam80snlskxcrr7rp0ulvy62xyuqt3v3jf"
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
"name": "words that are not ASCII",
|
|
|
|
|
|
|
|
"words": [
|
|
|
|
|
|
|
|
"abaco",
|
|
|
|
|
|
|
|
"arbol",
|
|
|
|
|
|
|
|
"nino",
|
|
|
|
|
|
|
|
"σασ",
|
|
|
|
|
|
|
|
"nandu",
|
|
|
|
|
|
|
|
"straße"
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
"chain_hash": "52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971",
|
|
|
|
|
|
|
|
"round": 1000,
|
|
|
|
|
|
|
|
"capsule_id": "ffeeddccbbaa99887766554433221100",
|
|
|
|
|
|
|
|
"key": "f64bce685596c1db68058125c0caf7cf4ab949d29d2829dff5627da5f758e6cd",
|
|
|
|
|
|
|
|
"recipient": "age1vc7tfsz048an895g5nxpkpj99cd54j44c3qv95kg57yu3klfxfdstpvqm6"
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
]
|
|
|
|
|
|
|
|
}
|