diff --git a/research/coded-native-caller/.gitattributes b/research/coded-native-caller/.gitattributes new file mode 100644 index 0000000000..614eaa1ec3 --- /dev/null +++ b/research/coded-native-caller/.gitattributes @@ -0,0 +1,2 @@ +* -text +CODE.json whitespace=cr-at-eol diff --git a/research/coded-native-caller/CODE.json b/research/coded-native-caller/CODE.json new file mode 100644 index 0000000000..03170f4a31 --- /dev/null +++ b/research/coded-native-caller/CODE.json @@ -0,0 +1 @@ +{"A":[["0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","-1/2","1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0"],["-1/2","0","-1/2","-1/2","-1/2","-1/2","0","1/2","0","0","0","0","0","0","0","0","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","-1/2","0","0","0","0","-1/2","0","0","0","-1/2","1/2","1/2","0","0","0","0","0","0","0","1/2","1/2","1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","1/2","1/2","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","1/2","0","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","1/2","0","0","0","0","1/2","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","0","0","0","0"],["-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","-1/2","0","0","0","-1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","0","0","0","0","0","-1/2","0","0","0","0","0","0","0","-1/2","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","0","1/2","1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","0","-1/2","1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","-1/2","0","0","0","0","1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0"],["-1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","0","1/2","0","0","0","-1/2","0","0","0","1/2","0","0","0","0","1/2","1/2","0","0","0","0","-1/2","0","0","0","-1/2","0","0","0","0","0","-1/2","0","0","1/2","1/2","0","1/2","1/2","1/2","1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","0","-1/2","1/2","0","-1/2","-1/2","0","1/2","1/2","0","0","-1/2","0","-1/2","-1/2","0","0","-1/2","0","0","-1/2","0","0","-1/2","1/2","-1/2","1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","0","1/2","0","0","0","0","1/2","0","0","0","1/2","0","0","1/2","0","0","1/2","1/2"],["-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","1/2","0","0","0","-1/2","0","0","0","1/2","0","-1/2","0","1/2","0","1/2","0","0","0","0","-1/2","0","0","0","-1/2","0","0","1/2","0","0","-1/2","0","1/2","0","1/2","1/2","1/2","0","1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","0","1/2","-1/2","0","-1/2","1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","0","0","-1/2","1/2","-1/2","1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","1/2","0","0","0","0","1/2","0","0","0","1/2","0","0","1/2","0","-1/2","0"],["-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","1/2","0","0","0","-1/2","0","0","0","1/2","0","-1/2","0","1/2","1/2","0","0","0","0","0","-1/2","0","0","0","-1/2","0","0","1/2","0","0","-1/2","0","1/2","1/2","1/2","1/2","1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","0","1/2","-1/2","-1/2","0","1/2","1/2","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","0","0","-1/2","1/2","-1/2","1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","1/2","0","0","0","0","1/2","0","0","0","1/2","0","0","1/2","0","-1/2"],["-1/2","0","0","0","0","0","0","1/2","-1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","-1/2","0","0","0","0","0","0","0","0","0","1/2","-1/2","-1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","0","0","-1/2","1/2","-1/2","-1/2","-1/2","1/2","1/2","0","0","0","0","0","0","-1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0"],["0","1/2","0","0","0","0","1/2","0","1/2","-1/2","-1/2","-1/2","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","1/2","0","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","1/2","1/2","1/2","1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","1/2","1/2","1/2","1/2","-1/2","0","-1/2","0","-1/2","1/2","1/2","1/2","-1/2","0","-1/2","0","0","0","0","-1/2","0","-1/2","1/2","1/2","1/2","-1/2","0","0","0","0","-1/2","1/2","1/2","1/2","0","0","0","0","0"],["0","0","-1/2","0","0","0","-1/2","1/2","0","1/2","1/2","1/2","-1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","0","0","0","0","0","-1/2","0","0","0","1/2","1/2","1/2","1/2","0","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","0","1/2","1/2","1/2","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","1/2","0","1/2","-1/2","0","-1/2","-1/2","-1/2","1/2","0","0","1/2","0","0","0","1/2","-1/2","0","-1/2","-1/2","-1/2","0","1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0"],["0","0","0","1/2","0","0","1/2","-1/2","1/2","0","-1/2","-1/2","0","1/2","0","0","0","-1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","1/2","0","0","-1/2","0","-1/2","-1/2","-1/2","1/2","1/2","0","-1/2","-1/2","0","0","1/2","0","0","0","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","1/2","1/2","0","-1/2","-1/2","0","0","1/2","0","1/2","1/2","0","0","1/2","0","0","1/2","0","-1/2","0","-1/2","1/2","-1/2","0","1/2","1/2","-1/2","0","0","0","-1/2","0","0","-1/2","1/2","-1/2","0","1/2","1/2","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2"],["0","0","0","0","1/2","0","1/2","-1/2","1/2","-1/2","0","-1/2","0","0","1/2","0","0","0","-1/2","0","1/2","0","-1/2","0","-1/2","0","0","0","0","1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","1/2","-1/2","0","-1/2","0","1/2","0","0","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","-1/2","1/2","0","1/2","-1/2","0","-1/2","0","1/2","0","1/2","0","1/2","0","1/2","0","0","1/2","0","0","-1/2","0","-1/2","1/2","-1/2","1/2","0","1/2","-1/2","0","0","0","0","-1/2","0","-1/2","1/2","-1/2","1/2","0","1/2","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","1/2","0"],["0","0","0","0","0","1/2","1/2","-1/2","1/2","-1/2","-1/2","0","0","0","0","1/2","0","0","0","-1/2","0","1/2","0","-1/2","-1/2","0","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","-1/2","1/2","0","-1/2","-1/2","0","1/2","0","0","0","0","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","-1/2","-1/2","1/2","1/2","0","-1/2","-1/2","0","1/2","0","0","1/2","1/2","0","1/2","0","0","1/2","0","0","0","-1/2","0","-1/2","1/2","-1/2","1/2","1/2","0","-1/2","0","0","0","0","0","-1/2","-1/2","1/2","-1/2","1/2","1/2","0","0","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","1/2"],["-1/2","0","-1/2","0","0","0","-1/2","0","-1/2","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","0","0","1/2","0","1/2","1/2","1/2","0","0","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","-1/2","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","1/2","-1/2","0","-1/2","0","-1/2","-1/2","-1/2","0","1/2","0","1/2","0","0","0","-1/2","0","-1/2","0","0","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0"],["-1/2","0","0","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","0","-1/2","-1/2","0","1/2","0","0","0","0","1/2","1/2","0","0","1/2","1/2","0","1/2","1/2","0","-1/2","0","0","1/2","-1/2","-1/2","0","1/2","1/2","0","0","-1/2","0","0","0","0","0","-1/2","-1/2","0","-1/2","-1/2","0","0","-1/2","0","1/2","0","0","-1/2","0","0","1/2","1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","-1/2","0","1/2","-1/2","0","-1/2","1/2","0","-1/2","-1/2","0","1/2","0","0","1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","1/2","0","0","1/2","0","0","1/2","1/2"],["-1/2","0","0","0","-1/2","0","-1/2","0","0","0","1/2","0","-1/2","-1/2","0","-1/2","0","0","1/2","0","-1/2","0","1/2","0","1/2","0","1/2","1/2","1/2","0","1/2","0","0","-1/2","0","1/2","0","-1/2","1/2","0","1/2","0","-1/2","0","0","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","0","0","0","1/2","0","0","-1/2","0","1/2","0","1/2","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","0","1/2","-1/2","0","-1/2","1/2","-1/2","0","-1/2","0","1/2","0","0","0","1/2","0","-1/2","0","0","0","1/2","0","-1/2","-1/2","-1/2","0","-1/2","0","0","1/2","0","0","1/2","0","-1/2","0"],["-1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","0","0","0","1/2","0","-1/2","0","1/2","1/2","0","1/2","1/2","1/2","1/2","0","0","0","0","-1/2","1/2","-1/2","0","1/2","1/2","0","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","0","0","0","0","1/2","0","0","-1/2","0","1/2","1/2","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","0","1/2","-1/2","0","-1/2","1/2","-1/2","-1/2","0","0","1/2","0","0","0","0","1/2","-1/2","0","0","0","0","1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","1/2","0","0","1/2","0","-1/2"],["0","-1/2","-1/2","0","0","0","0","1/2","-1/2","0","0","0","-1/2","0","0","0","0","1/2","1/2","1/2","-1/2","-1/2","0","0","0","1/2","0","0","1/2","1/2","1/2","0","1/2","1/2","1/2","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","0","0","1/2","1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","-1/2","1/2","-1/2","1/2","0","0","-1/2","-1/2","-1/2","0","0","1/2","1/2","0","0","0","0","1/2","-1/2","0","0","0","1/2","1/2","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0"],["0","1/2","0","1/2","0","0","0","-1/2","0","-1/2","0","0","0","1/2","0","0","1/2","0","-1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","0","-1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","1/2","0","-1/2","-1/2","-1/2","-1/2","0","0","0","1/2","1/2","0","0","1/2","0","-1/2","0","0","0","-1/2","-1/2","0","0","1/2","-1/2","0","0","-1/2","-1/2","0","0","0","1/2","0","-1/2","1/2","-1/2","0","-1/2","0","1/2","1/2","0","0","-1/2","0","-1/2","0","0","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","0","-1/2","0","1/2","1/2","-1/2","0","0","-1/2","-1/2"],["0","1/2","0","0","1/2","0","0","-1/2","0","0","-1/2","0","0","0","1/2","0","1/2","-1/2","0","-1/2","1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","1/2","0","1/2","0","0","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","-1/2","1/2","-1/2","0","-1/2","1/2","0","1/2","0","0","-1/2","0","0","-1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","1/2","0","1/2","0","-1/2","0","1/2","0"],["0","1/2","0","0","0","1/2","0","-1/2","0","0","0","-1/2","0","0","0","1/2","1/2","-1/2","-1/2","0","0","1/2","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","1/2","0","0","0","-1/2","-1/2","0","0","0","-1/2","1/2","1/2","0","1/2","0","0","0","0","0","-1/2","-1/2","-1/2","0","1/2","0","0","0","0","-1/2","0","-1/2","-1/2","1/2","0","0","0","-1/2","1/2","-1/2","0","-1/2","1/2","1/2","0","0","0","-1/2","0","0","0","-1/2","0","-1/2","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","1/2","1/2","0","0","0","-1/2","0","1/2"],["0","0","-1/2","0","-1/2","0","0","0","-1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","-1/2","1/2","0","1/2","1/2","1/2","0","1/2","0","1/2","1/2","1/2","0","1/2","0","0","-1/2","0","-1/2","0","0","-1/2","0","1/2","0","0","1/2","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","0","1/2","0","1/2","0","1/2","-1/2","1/2","-1/2","0","-1/2","0","-1/2","0","0","0","1/2","0","1/2","0","0","0","-1/2","0","1/2","0","0","1/2","0","1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","-1/2","0"],["0","0","-1/2","0","0","-1/2","0","0","-1/2","0","0","1/2","-1/2","0","0","-1/2","-1/2","0","0","1/2","-1/2","0","0","1/2","1/2","1/2","1/2","0","1/2","1/2","0","1/2","1/2","1/2","0","0","-1/2","0","0","0","-1/2","-1/2","0","0","1/2","0","1/2","0","-1/2","-1/2","0","0","0","1/2","-1/2","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","0","0","1/2","-1/2","0","0","0","1/2","1/2","0","1/2","-1/2","1/2","-1/2","0","-1/2","-1/2","0","0","0","0","1/2","0","0","1/2","0","0","-1/2","0","0","1/2","0","1/2","0","0","1/2","-1/2","0","0","1/2","-1/2","-1/2","0","0","-1/2"],["0","0","0","1/2","1/2","0","0","0","0","-1/2","-1/2","0","0","1/2","1/2","0","0","-1/2","-1/2","0","1/2","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","1/2","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","0","0","1/2","0","0","1/2","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","0","0","0","1/2","-1/2","0","0","-1/2","0","0","-1/2","-1/2","1/2","-1/2","1/2","-1/2","0","0","1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","0","-1/2"],["0","0","0","1/2","0","1/2","0","0","0","-1/2","0","-1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","0","1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","-1/2","-1/2","0","0","1/2","0","0","1/2","0","0","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","-1/2","1/2","-1/2","1/2","-1/2","0","1/2","0","0","0","0","0","-1/2","0","-1/2","0","0","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0"],["0","0","0","0","1/2","1/2","0","0","0","0","-1/2","-1/2","0","0","1/2","1/2","0","0","-1/2","-1/2","1/2","1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","-1/2","0","0","0","0","-1/2","-1/2","-1/2","0","0","1/2","0","0","1/2","0","0","0","0","-1/2","-1/2","1/2","0","0","-1/2","0","0","0","0","-1/2","1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","-1/2","1/2","-1/2","1/2","-1/2","1/2","0","0","0","0","0","0","0","-1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","1/2","1/2"],["-1/2","0","0","0","0","0","-1/2","0","0","0","0","0","0","0","0","0","1/2","-1/2","-1/2","-1/2","1/2","1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","-1/2","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0"],["0","-1/2","0","0","0","0","0","1/2","0","0","0","0","1/2","1/2","1/2","1/2","0","0","0","0","1/2","1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","1/2","1/2","0","0","0","0","0","0","-1/2","0","0","0","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","0","1/2","1/2","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","0","1/2","0","0","0","0","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","1/2","0","1/2","-1/2","-1/2","-1/2","1/2","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","0","0","0","0"],["0","0","-1/2","0","0","0","0","0","-1/2","0","0","0","0","1/2","1/2","1/2","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","0","0","0","0","1/2","1/2","1/2","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","1/2","0","0","-1/2","0","0","0","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","1/2","-1/2","0","-1/2","-1/2","-1/2","0","1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0"],["0","0","0","-1/2","0","0","0","0","0","1/2","0","0","1/2","0","1/2","1/2","1/2","0","-1/2","-1/2","1/2","1/2","0","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","0","0","0","0","-1/2","0","0","1/2","1/2","0","0","0","0","0","1/2","0","0","1/2","0","0","1/2","1/2","0","1/2","0","-1/2","-1/2","0","1/2","1/2","0","0","-1/2","0","-1/2","-1/2","0","0","-1/2","0","0","-1/2","0","-1/2","1/2","0","0","0","1/2","0","0","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","1/2","-1/2","1/2","0","-1/2","-1/2","0","0","1/2","0","0","0","1/2","0","0","1/2","0","0","1/2","1/2"],["0","0","0","0","-1/2","0","0","0","0","0","1/2","0","1/2","1/2","0","1/2","1/2","-1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","0","1/2","0","1/2","0","0","-1/2","0","0","1/2","0","0","1/2","0","1/2","0","1/2","1/2","-1/2","0","-1/2","1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","0","-1/2","1/2","0","0","0","0","1/2","0","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","1/2","-1/2","1/2","-1/2","0","-1/2","0","0","0","1/2","0","0","0","1/2","0","0","1/2","0","-1/2","0"],["0","0","0","0","0","-1/2","0","0","0","0","0","1/2","1/2","1/2","1/2","0","1/2","-1/2","-1/2","0","1/2","0","-1/2","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","0","1/2","0","0","-1/2","0","1/2","1/2","0","0","0","-1/2","0","0","1/2","0","0","1/2","0","1/2","1/2","1/2","-1/2","-1/2","0","1/2","1/2","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","0","-1/2","1/2","0","0","0","0","0","1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","1/2","-1/2","1/2","-1/2","-1/2","0","0","0","0","0","1/2","0","0","0","1/2","0","0","1/2","0","-1/2"],["-1/2","-1/2","0","0","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","1/2","1/2","0","0","0","0","0","0","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","1/2","-1/2","-1/2","-1/2","0","0","0","0","0"],["-1/2","0","0","-1/2","0","0","0","-1/2","1/2","0","-1/2","-1/2","0","-1/2","0","0","1/2","0","-1/2","-1/2","1/2","1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","-1/2","0","-1/2","-1/2","0","0","0","-1/2","0","0","1/2","1/2","0","0","0","0","0","0","-1/2","-1/2","0","-1/2","-1/2","0","0","-1/2","0","1/2","0","0","-1/2","0","0","1/2","1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","1/2","0","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","1/2","0","0","1/2","0","0","1/2","1/2"],["-1/2","0","0","0","-1/2","0","0","-1/2","1/2","-1/2","0","-1/2","0","0","-1/2","0","1/2","-1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","0","0","0","-1/2","0","-1/2","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","1/2","0","1/2","0","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","0","0","0","1/2","0","0","-1/2","0","1/2","0","1/2","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","0","0","1/2","0","-1/2","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","0","1/2","0","-1/2","-1/2","-1/2","0","-1/2","0","0","1/2","0","0","1/2","0","-1/2","0"],["-1/2","0","0","0","0","-1/2","0","-1/2","1/2","-1/2","-1/2","0","0","0","0","-1/2","1/2","-1/2","-1/2","0","1/2","0","-1/2","0","0","-1/2","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","1/2","0","0","-1/2","0","1/2","1/2","0","0","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","0","0","0","0","1/2","0","0","-1/2","0","1/2","1/2","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","0","-1/2","0","-1/2","0","0","0","0","1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","1/2","0","0","1/2","0","-1/2"],["0","-1/2","-1/2","0","0","0","1/2","0","0","-1/2","-1/2","-1/2","0","1/2","1/2","1/2","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","0","-1/2","0","0","0","0","1/2","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","1/2","1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","-1/2","-1/2","0","0","1/2","-1/2","0","0","0","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","0","1/2","-1/2","0","0","0","1/2","1/2","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0"],["0","1/2","0","0","1/2","0","-1/2","0","-1/2","1/2","0","1/2","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","-1/2","0","1/2","0","0","1/2","0","0","1/2","0","1/2","0","1/2","0","1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","1/2","0","1/2","0","0","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","1/2","0","0","-1/2","0","0","-1/2","0","1/2","1/2","0","1/2","1/2","0","1/2","0","-1/2","0","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","1/2","0","1/2","0","-1/2","0","1/2","0"],["0","1/2","0","0","0","1/2","-1/2","0","-1/2","1/2","1/2","0","-1/2","-1/2","-1/2","0","0","0","0","-1/2","-1/2","0","1/2","0","0","0","1/2","0","0","0","1/2","1/2","0","0","1/2","1/2","-1/2","0","0","0","1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","0","0","-1/2","1/2","1/2","0","1/2","0","0","0","0","0","-1/2","-1/2","-1/2","0","1/2","0","0","0","0","-1/2","0","-1/2","-1/2","1/2","0","0","0","1/2","0","0","-1/2","0","0","0","-1/2","1/2","1/2","0","1/2","1/2","1/2","0","0","-1/2","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","1/2","1/2","0","0","0","-1/2","0","1/2"],["0","0","-1/2","-1/2","0","0","1/2","-1/2","0","0","-1/2","-1/2","0","0","1/2","1/2","0","0","-1/2","-1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","0","0","0","-1/2","0","0","-1/2","0","0","0","-1/2","-1/2","1/2","1/2","0","1/2","0","1/2","1/2","0","-1/2","-1/2","1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","-1/2","0","0","0","0","-1/2","1/2","0","0","0","0","-1/2","1/2","1/2","0","0","-1/2","0","0","0","-1/2","1/2","0","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","0","0","-1/2","1/2","0","0","0","1/2","1/2","0","0","-1/2","1/2","0","0","0","-1/2","-1/2","1/2","1/2"],["0","0","-1/2","0","-1/2","0","1/2","-1/2","0","-1/2","0","-1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","-1/2","0","0","-1/2","0","0","0","-1/2","0","-1/2","0","0","0","-1/2","0","-1/2","1/2","0","-1/2","0","-1/2","1/2","0","1/2","1/2","0","0","1/2","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","0","1/2","0","1/2","0","-1/2","0","0","0","-1/2","0","1/2","0","-1/2","-1/2","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","1/2","0","0","1/2","0","1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","-1/2","0"],["0","0","-1/2","0","0","-1/2","1/2","-1/2","0","-1/2","-1/2","0","0","1/2","1/2","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","0","0","0","-1/2","0","0","-1/2","0","0","0","-1/2","-1/2","0","1/2","-1/2","-1/2","0","0","1/2","1/2","1/2","0","1/2","0","-1/2","-1/2","0","0","0","1/2","-1/2","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","0","0","1/2","-1/2","0","0","0","1/2","1/2","0","-1/2","0","0","0","-1/2","0","0","1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","0","-1/2","0","0","1/2","0","1/2","0","0","1/2","-1/2","0","0","1/2","-1/2","-1/2","0","0","-1/2"],["0","0","0","1/2","1/2","0","-1/2","1/2","-1/2","0","0","1/2","-1/2","0","0","-1/2","-1/2","0","0","1/2","0","-1/2","-1/2","0","0","0","0","0","1/2","1/2","0","0","1/2","1/2","0","0","-1/2","0","1/2","1/2","0","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","1/2","0","0","1/2","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","0","0","0","1/2","-1/2","0","0","-1/2","0","0","-1/2","1/2","0","0","0","0","-1/2","-1/2","0","1/2","1/2","1/2","1/2","0","0","1/2","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","0","-1/2"],["0","0","0","1/2","0","1/2","-1/2","1/2","-1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","-1/2","0","0","-1/2","0","0","0","0","1/2","0","1/2","0","1/2","0","1/2","0","0","-1/2","1/2","0","1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","0","1/2","0","0","1/2","0","0","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","1/2","0","0","0","0","-1/2","0","-1/2","1/2","1/2","1/2","1/2","0","1/2","0","0","0","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0"],["0","0","0","0","1/2","1/2","-1/2","1/2","-1/2","1/2","0","0","-1/2","-1/2","0","0","-1/2","1/2","0","0","0","0","0","0","-1/2","0","0","0","0","1/2","1/2","0","0","1/2","1/2","0","-1/2","-1/2","0","1/2","1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","1/2","0","0","1/2","0","0","0","0","-1/2","-1/2","1/2","0","0","-1/2","0","0","0","0","-1/2","1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","1/2","0","0","0","0","0","-1/2","-1/2","1/2","1/2","1/2","1/2","1/2","0","0","0","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","1/2","1/2"],["0","0","1/2","1/2","1/2","1/2","-1/2","1/2","0","0","0","0","0","0","0","0","0","0","0","0","1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","0","0","0","0","0","1/2","1/2","1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","1/2","-1/2","1/2","0","0","0","0","1/2","1/2","1/2","0","0","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","1/2","-1/2","-1/2","-1/2","0","0","0","0","0"],["0","1/2","0","1/2","1/2","1/2","-1/2","0","-1/2","0","0","0","-1/2","0","0","0","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","0","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","0","1/2","1/2","1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","0","1/2","-1/2","0","-1/2","0","0","0","1/2","1/2","0","1/2","0","0","0","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0"],["0","1/2","1/2","1/2","0","1/2","-1/2","0","0","0","1/2","0","0","0","-1/2","0","1/2","-1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","0","0","0","-1/2","0","0","0","-1/2","0","1/2","0","-1/2","1/2","0","1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","1/2","0","0","1/2","0","1/2","0","1/2","0","0","1/2","0","0","-1/2","0","1/2","0","1/2","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","0","0","1/2","-1/2","0","0","0","1/2","0","1/2","1/2","0","0","0","1/2","0","0","-1/2","1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","1/2","0","0","1/2","0","-1/2","0"],["0","1/2","1/2","1/2","1/2","0","-1/2","0","0","0","0","1/2","0","0","0","-1/2","1/2","-1/2","-1/2","0","1/2","0","-1/2","0","0","-1/2","0","0","0","0","-1/2","0","0","0","-1/2","1/2","-1/2","0","1/2","1/2","0","-1/2","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","0","0","1/2","0","1/2","1/2","0","0","0","1/2","0","0","-1/2","0","1/2","1/2","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","0","0","1/2","-1/2","0","0","0","0","1/2","1/2","1/2","0","0","0","0","1/2","0","-1/2","1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","1/2","0","0","1/2","0","-1/2"],["-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","-1/2","0","-1/2","0","0","-1/2","-1/2","0","0","1/2","0","1/2","0","1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","1/2","1/2","0","0","0","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","0","-1/2","-1/2","0","0","1/2","-1/2","0","0","-1/2","-1/2","0","0","0","1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","1/2","1/2","-1/2","0","-1/2","0","0","-1/2","0","1/2","1/2","-1/2","0","0","-1/2","-1/2"],["-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","-1/2","0","1/2","0","0","1/2","0","0","1/2","0","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","1/2","0","1/2","-1/2","0","0","-1/2","0","-1/2","1/2","0","1/2","0","-1/2","0","1/2","0"],["-1/2","0","-1/2","-1/2","-1/2","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","-1/2","-1/2","0","1/2","0","0","0","1/2","0","0","0","1/2","0","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","1/2","0","0","1/2","0","0","1/2","-1/2","-1/2","0","0","0","-1/2","0","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","1/2","0","0","0","0","-1/2","0","-1/2","-1/2","1/2","0","0","0","0","-1/2","0","-1/2","0","0","0","-1/2","-1/2","0","-1/2","0","0","0","-1/2","-1/2","0","-1/2","1/2","1/2","0","-1/2","0","0","0","-1/2","-1/2","1/2","1/2","0","0","0","-1/2","0","1/2"],["-1/2","-1/2","0","0","-1/2","-1/2","0","0","1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","1/2","1/2","0","0","0","0","1/2","0","0","1/2","1/2","0","0","-1/2","0","-1/2","-1/2","0","1/2","1/2","1/2","0","0","0","0","1/2","0","1/2","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","1/2","1/2","1/2","0","0","0","0","1/2","-1/2","0","0","0","0","1/2","-1/2","-1/2","0","0","0","-1/2","0","0","1/2","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","0","-1/2","1/2","0","0","1/2","1/2","0","-1/2","-1/2","0","0","1/2","-1/2","0","0","0","1/2","1/2","-1/2","-1/2"],["-1/2","-1/2","0","-1/2","0","-1/2","0","0","1/2","0","-1/2","0","0","-1/2","0","-1/2","0","1/2","0","1/2","1/2","0","0","1/2","0","0","0","1/2","0","1/2","0","-1/2","-1/2","0","-1/2","0","0","1/2","0","1/2","0","0","1/2","0","0","1/2","1/2","0","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","1/2","0","1/2","0","1/2","0","0","1/2","0","0","-1/2","0","0","1/2","0","-1/2","0","-1/2","0","0","-1/2","0","0","1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","0","1/2","0","-1/2","0","1/2","0","1/2","1/2","0"],["-1/2","-1/2","0","-1/2","-1/2","0","0","0","1/2","0","0","-1/2","0","-1/2","-1/2","0","0","1/2","1/2","0","0","1/2","1/2","0","0","0","0","1/2","0","0","1/2","-1/2","-1/2","-1/2","0","0","1/2","0","0","0","1/2","1/2","0","0","0","1/2","0","1/2","0","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","0","1/2","1/2","0","0","0","1/2","1/2","0","0","0","0","-1/2","1/2","0","0","0","-1/2","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","-1/2","-1/2","1/2","0","1/2","1/2","0","0","-1/2","0","0","-1/2","1/2","0","0","-1/2","1/2","1/2","0","0","1/2"],["-1/2","-1/2","-1/2","0","0","-1/2","0","0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","-1/2","0","0","1/2","0","-1/2","-1/2","0","0","0","0","0","1/2","1/2","0","-1/2","0","0","-1/2","-1/2","0","1/2","0","0","-1/2","-1/2","0","0","0","0","1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","0","0","0","1/2","-1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","0","0","-1/2","-1/2","0","-1/2","0","0","0","-1/2","-1/2","0","-1/2","1/2","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","0","-1/2"],["-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","0","1/2","0","-1/2","0","0","-1/2","0","0","0","0","1/2","0","1/2","-1/2","0","-1/2","0","-1/2","1/2","0","0","-1/2","0","0","-1/2","0","0","0","0","1/2","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","1/2","0","0","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","0","-1/2","0","-1/2","-1/2","0","0","0","-1/2","0","-1/2","-1/2","1/2","-1/2","0","1/2","0","0","0","-1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0"],["-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","-1/2","1/2","0","0","0","0","0","0","-1/2","0","0","0","0","1/2","1/2","-1/2","-1/2","0","0","-1/2","0","0","-1/2","0","0","0","0","-1/2","0","0","1/2","1/2","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","1/2","0","0","-1/2","0","0","0","0","-1/2","1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","-1/2","-1/2","-1/2","1/2","-1/2","1/2","0","0","0","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","1/2","1/2"],["0","0","0","1/2","1/2","1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","1/2","1/2","-1/2","0","0","0","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","0","1/2","1/2","1/2","-1/2","-1/2","-1/2","0","0","0","1/2","1/2","1/2","0","0","0","0","0","0","-1/2","0","0","-1/2","1/2","-1/2","0","0","0","0","1/2","1/2","1/2","0","0","0","-1/2","1/2","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0"],["0","0","-1/2","0","-1/2","-1/2","0","0","-1/2","0","1/2","1/2","0","1/2","0","0","0","-1/2","0","0","-1/2","-1/2","0","0","1/2","0","0","-1/2","0","-1/2","-1/2","1/2","1/2","0","0","0","0","0","0","-1/2","-1/2","0","0","1/2","1/2","0","0","0","-1/2","0","0","0","1/2","1/2","0","0","1/2","1/2","0","-1/2","-1/2","1/2","0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","-1/2","0","0","0","1/2","0","0","0","1/2","-1/2","0","-1/2","0","0","0","-1/2","-1/2","0","-1/2","0","0","1/2","-1/2","0","-1/2","0","0","0","1/2","0","1/2","1/2","-1/2","0","1/2","1/2","-1/2","0","0","-1/2","-1/2"],["0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","1/2","0","1/2","0","0","1/2","0","0","0","-1/2","0","0","-1/2","0","1/2","0","0","0","-1/2","-1/2","0","-1/2","1/2","0","1/2","0","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","1/2","0","1/2","0","0","-1/2","0","1/2","0","1/2","0","1/2","0","1/2","-1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","0","0","1/2","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","0","-1/2","0","1/2","-1/2","0","0","-1/2","0","0","1/2","1/2","0","1/2","-1/2","1/2","0","1/2","0","-1/2","0","1/2","0"],["0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","1/2","1/2","0","0","0","0","1/2","0","0","0","-1/2","-1/2","0","1/2","0","0","0","0","-1/2","-1/2","-1/2","0","1/2","0","0","1/2","0","0","-1/2","-1/2","-1/2","0","1/2","0","0","1/2","0","0","1/2","0","0","-1/2","1/2","1/2","0","1/2","0","0","1/2","-1/2","-1/2","0","0","0","1/2","0","-1/2","-1/2","0","0","-1/2","0","-1/2","-1/2","1/2","0","0","0","0","0","1/2","-1/2","0","0","0","-1/2","0","-1/2","-1/2","0","0","0","-1/2","1/2","-1/2","0","0","0","-1/2","0","1/2","1/2","1/2","0","-1/2","1/2","1/2","0","0","0","-1/2","0","1/2"],["0","1/2","0","0","1/2","1/2","0","-1/2","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","-1/2","0","1/2","0","0","1/2","1/2","0","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","-1/2","0","0","0","-1/2","-1/2","1/2","0","0","0","0","-1/2","-1/2","1/2","0","0","0","-1/2","-1/2","1/2","1/2","0","1/2","0","0","0","0","-1/2","1/2","1/2","0","0","0","0","-1/2","0","-1/2","1/2","0","0","0","1/2","0","1/2","1/2","0","0","-1/2","0","-1/2","1/2","0","0","-1/2","0","0","-1/2","-1/2","-1/2","1/2","0","0","0","-1/2","-1/2","1/2","1/2"],["0","1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","0","-1/2","0","-1/2","-1/2","0","0","-1/2","0","0","1/2","0","1/2","0","1/2","0","0","-1/2","0","0","0","-1/2","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","1/2","0","1/2","0","1/2","0","0","-1/2","0","1/2","0","1/2","0","0","0","-1/2","0","-1/2","0","1/2","0","0","1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","1/2","0","-1/2","0","-1/2","-1/2","0"],["0","1/2","0","1/2","1/2","0","0","-1/2","0","-1/2","-1/2","0","-1/2","0","0","-1/2","0","-1/2","-1/2","0","0","-1/2","-1/2","0","0","0","1/2","0","1/2","1/2","0","0","0","0","-1/2","0","-1/2","0","0","0","-1/2","-1/2","0","0","0","-1/2","0","-1/2","-1/2","-1/2","0","0","0","1/2","-1/2","0","0","-1/2","0","0","1/2","-1/2","-1/2","0","0","1/2","1/2","0","0","1/2","-1/2","0","0","0","1/2","1/2","0","0","0","-1/2","0","-1/2","0","0","1/2","0","1/2","0","1/2","0","0","1/2","-1/2","0","-1/2","0","0","1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","0","1/2","-1/2","-1/2","0","0","-1/2"],["0","-1/2","-1/2","0","0","-1/2","0","1/2","-1/2","0","0","1/2","0","1/2","1/2","0","-1/2","0","0","1/2","0","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","-1/2","0","1/2","1/2","0","-1/2","0","1/2","0","0","-1/2","-1/2","0","0","0","0","1/2","0","0","0","1/2","0","0","1/2","-1/2","0","0","0","-1/2","-1/2","0","1/2","1/2","0","0","-1/2","-1/2","0","0","1/2","-1/2","0","0","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","1/2","0","0","-1/2","-1/2","0","1/2","1/2","0","0","1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","0","-1/2"],["0","-1/2","-1/2","0","-1/2","0","0","1/2","-1/2","0","1/2","0","0","1/2","0","1/2","-1/2","0","1/2","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","0","1/2","0","1/2","-1/2","1/2","0","0","-1/2","0","0","-1/2","0","0","0","0","1/2","0","1/2","0","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","1/2","0","1/2","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","0","1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","1/2","0","0","-1/2","0","-1/2","1/2","1/2","0","1/2","0","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0"],["0","-1/2","-1/2","-1/2","0","0","0","1/2","-1/2","1/2","0","0","0","0","1/2","1/2","-1/2","1/2","0","0","0","0","0","0","-1/2","0","-1/2","-1/2","-1/2","0","0","0","0","1/2","1/2","-1/2","0","0","-1/2","0","0","0","0","-1/2","0","0","1/2","1/2","1/2","0","0","1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","0","1/2","1/2","-1/2","-1/2","0","1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","0","0","1/2","0","0","0","-1/2","-1/2","0","-1/2","0","0","0","-1/2","-1/2","1/2","0","0","0","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","-1/2","-1/2","0","-1/2","-1/2","1/2","1/2"],["-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","1/2","0","0","-1/2","-1/2","1/2","-1/2","0","0","0","0","0","0","1/2","-1/2","0","0","0","-1/2","-1/2","0","0","-1/2","-1/2","1/2","0","0","1/2","0","0","0","0","1/2","0","0","-1/2","-1/2","-1/2","0","0","-1/2","0","0","0","0","1/2","1/2","-1/2","0","0","1/2","0","0","0","0","1/2","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","0","0","0","-1/2","1/2","-1/2","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","1/2","-1/2","0","0","-1/2","-1/2","-1/2","0","0","0","0","1/2","1/2","0","1/2","1/2","-1/2","-1/2"],["-1/2","0","0","-1/2","0","-1/2","-1/2","0","0","1/2","0","1/2","0","-1/2","0","-1/2","1/2","0","-1/2","0","1/2","0","0","1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","-1/2","1/2","-1/2","0","0","1/2","0","0","1/2","0","0","0","0","-1/2","0","-1/2","0","0","-1/2","0","0","1/2","0","1/2","0","-1/2","0","0","1/2","0","0","1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","0","0","0","-1/2","1/2","0","-1/2","0","0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","0","1/2","0","1/2","1/2","0","1/2","1/2","0"],["-1/2","0","0","-1/2","-1/2","0","-1/2","0","0","1/2","1/2","0","0","-1/2","-1/2","0","1/2","0","0","-1/2","0","1/2","1/2","0","0","-1/2","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","1/2","0","-1/2","0","0","1/2","1/2","0","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","1/2","0","0","1/2","0","0","-1/2","0","0","1/2","1/2","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","0","0","0","-1/2","1/2","0","0","-1/2","0","0","-1/2","-1/2","0","0","-1/2","0","-1/2","1/2","0","0","-1/2","-1/2","-1/2","0","0","-1/2","0","1/2","1/2","0","1/2","1/2","0","0","1/2"],["-1/2","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","0","1/2","-1/2","0","0","-1/2","0","-1/2","-1/2","0","0","-1/2","-1/2","0","0","-1/2","0","-1/2","0","0","-1/2","0","0","0","-1/2","0","-1/2","0","0","0","-1/2","-1/2","0","0","0","-1/2","0","-1/2","-1/2","-1/2","0","0","0","1/2","-1/2","0","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","0","0","-1/2","0","0","0","-1/2","0","-1/2","-1/2","0","0","0","-1/2","0","-1/2","-1/2","0","0","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","0","1/2","-1/2","-1/2","0","0","-1/2"],["-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","0","0","-1/2","0","0","0","-1/2","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","0","-1/2","0","0","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","-1/2","0","1/2","0","-1/2","0","-1/2","-1/2","0"],["-1/2","0","-1/2","-1/2","0","0","-1/2","0","-1/2","1/2","0","0","-1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","-1/2","-1/2","0","-1/2","-1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","-1/2","0","0","0","-1/2","-1/2","1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","0","-1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","1/2","0","0","0","-1/2","-1/2","1/2","1/2"],["-1/2","-1/2","0","0","0","-1/2","-1/2","1/2","0","0","0","1/2","0","0","0","-1/2","0","0","0","1/2","1/2","0","-1/2","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","0","0","-1/2","0","0","1/2","1/2","1/2","0","-1/2","0","0","-1/2","0","0","-1/2","0","0","1/2","-1/2","-1/2","0","-1/2","0","0","0","0","0","1/2","1/2","1/2","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","1/2","-1/2","-1/2","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","0","1/2","-1/2","-1/2","0","0","0","1/2","0","-1/2"],["-1/2","-1/2","0","0","-1/2","0","-1/2","1/2","0","0","1/2","0","0","0","-1/2","0","0","0","1/2","0","0","1/2","0","-1/2","0","-1/2","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","0","0","1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","0","0","0","1/2","-1/2","0","-1/2","0","0","0","-1/2","-1/2","0","-1/2","0","0","1/2","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","1/2","-1/2","0","-1/2","0","1/2","0","-1/2","0"],["-1/2","-1/2","0","-1/2","0","0","-1/2","1/2","0","1/2","0","0","0","-1/2","0","0","0","1/2","0","0","1/2","1/2","0","0","-1/2","-1/2","-1/2","0","-1/2","0","0","-1/2","-1/2","0","0","0","0","0","0","1/2","1/2","0","0","-1/2","-1/2","0","0","0","1/2","0","0","0","-1/2","-1/2","0","0","-1/2","0","1/2","0","0","0","1/2","1/2","0","0","-1/2","0","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","1/2","0","-1/2","-1/2","0","0","0","-1/2","0","-1/2","-1/2","0","0","1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","-1/2","1/2","0","-1/2","-1/2","1/2","0","0","1/2","1/2"],["-1/2","-1/2","-1/2","0","0","0","-1/2","1/2","-1/2","0","0","0","-1/2","0","0","0","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","0","0","0","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0"],["0","0","0","0","0","0","1/2","-1/2","1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","1/2","-1/2","1/2","-1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0"],["-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","-1/2","-1/2","1/2","1/2","1/2","1/2","1/2","1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","1/2","0","1/2","-1/2","1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","0"],["0","1/2","1/2","1/2","1/2","1/2","0","-1/2","1/2","-1/2","-1/2","-1/2","0","0","0","0","1/2","-1/2","-1/2","-1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","-1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","0","-1/2","1/2","0","1/2","-1/2","1/2","1/2","1/2","0","1/2","0","0","0","0","0","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0"],["-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","-1/2","-1/2","1/2","1/2","1/2","0","1/2","0","0","0","0","1/2","0","0","0","1/2","-1/2","-1/2","0","0","0","0","0","0","1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","1/2","-1/2","1/2","0","1/2","-1/2","-1/2","-1/2","0","0","-1/2","0","0","0","0","0","-1/2","0","0","0","0","-1/2","0","0","0","0","-1/2","1/2","1/2","1/2","0","0","0","0","0"],["1/2","1/2","0","1/2","1/2","1/2","1/2","-1/2","0","-1/2","-1/2","-1/2","0","1/2","1/2","1/2","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","0","0","-1/2","0","0","0","0","0","0","0","-1/2","0","0","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","0","0","0","0","1/2","1/2","1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","1/2","1/2","0","0","0","1/2","1/2","1/2","0","-1/2","1/2","-1/2","1/2","0","1/2","1/2","1/2","0","0","0","1/2","0","0","0","0","0","-1/2","0","0","0","0","1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0"],["-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","1/2","-1/2","0","1/2","1/2","-1/2","0","-1/2","-1/2","-1/2","0","1/2","1/2","-1/2","-1/2","0","0","1/2","0","0","0","1/2","0","0","0","1/2","0","0","0","0","0","1/2","0","0","-1/2","-1/2","0","0","0","0","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","1/2","-1/2","1/2","-1/2","1/2","0","-1/2","-1/2","0","0","0","0","-1/2","0","0","0","0","0","-1/2","0","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2"],["-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","1/2","-1/2","1/2","0","1/2","-1/2","-1/2","0","-1/2","-1/2","1/2","0","1/2","0","-1/2","0","1/2","0","0","0","0","0","1/2","0","0","0","1/2","0","0","-1/2","0","0","1/2","0","-1/2","0","-1/2","0","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","1/2","-1/2","1/2","-1/2","1/2","-1/2","0","-1/2","0","0","0","0","0","-1/2","0","0","0","0","0","-1/2","0","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","1/2","0"],["-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","1/2","-1/2","1/2","1/2","0","-1/2","-1/2","-1/2","0","-1/2","1/2","1/2","0","-1/2","0","1/2","0","0","0","0","0","0","0","1/2","0","0","0","1/2","0","0","-1/2","0","0","1/2","0","-1/2","-1/2","0","0","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","-1/2","0","0","0","-1/2","0","0","1/2","0","-1/2","-1/2","0","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","1/2","-1/2","1/2","-1/2","1/2","-1/2","-1/2","0","0","0","0","0","0","0","-1/2","0","0","0","0","0","-1/2","0","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","1/2"],["-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","-1/2","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","0"],["0","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","0","0","0","0","0","1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","-1/2","1/2","1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","-1/2","0","1/2","0","0","0","0","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","0","0","0","0","0","1/2","1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0"],["-1/2","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","1/2","1/2","1/2","1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","0","-1/2","0","0","0","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","-1/2","0","0","0","0","-1/2","1/2","1/2","1/2","0","0","0","0","0"],["-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","1/2","0","0","0","1/2","0","0","0","1/2","0","0","0","1/2","1/2","0","0","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","1/2","1/2","0","0","0","1/2","1/2","1/2","0","1/2","0","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","0","0","0","1/2","1/2","1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","-1/2","0","0","0","1/2","0","0","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","1/2","0","0","0","0","-1/2","0","0","0","1/2","0","0","0","1/2","1/2","1/2","0","0"],["-1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","0","-1/2","0","0","0","1/2","0","0","0","-1/2","0","0","0","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","1/2","1/2","0","-1/2","-1/2","0","0","1/2","0","0","0","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","0","-1/2","0","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2"],["-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","-1/2","0","0","0","1/2","0","0","0","-1/2","0","1/2","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","1/2","-1/2","0","-1/2","0","1/2","0","0","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","0","0","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","0","0","-1/2","0","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","1/2","0"],["-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","0","0","0","1/2","0","0","0","-1/2","0","1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","-1/2","1/2","0","-1/2","-1/2","0","1/2","0","0","0","0","0","1/2","0","0","-1/2","0","0","-1/2","0","-1/2","-1/2","0","0","0","-1/2","0","0","1/2","0","-1/2","-1/2","0","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","0","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","1/2"],["-1/2","0","0","0","0","0","0","-1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","1/2","1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","0","0","0","0","0","-1/2","1/2","0","0","0","0","0","0","1/2","-1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0"],["0","1/2","0","0","0","0","-1/2","0","-1/2","1/2","1/2","1/2","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","1/2","0","0","0","1/2","-1/2","-1/2","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","1/2","1/2","1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","1/2","0","-1/2","0","0","0","0","1/2","0","-1/2","0","0","0","0","1/2","0","1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","-1/2","1/2","1/2","1/2","0","0","0","0","0"],["0","0","-1/2","0","0","0","1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","0","0","0","1/2","1/2","0","1/2","1/2","1/2","0","0","0","0","-1/2","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","0","1/2","1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","1/2","1/2","0","0","0","1/2","1/2","1/2","0","0","-1/2","0","0","-1/2","0","0","0","-1/2","0","0","1/2","0","0","0","-1/2","1/2","0","1/2","1/2","1/2","0","1/2","0","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0"],["0","0","0","1/2","0","0","-1/2","1/2","-1/2","0","1/2","1/2","0","1/2","0","0","0","-1/2","0","0","0","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","-1/2","-1/2","0","1/2","0","0","0","0","0","1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","0","1/2","1/2","0","1/2","1/2","0","0","1/2","0","-1/2","0","0","1/2","0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","1/2","0","0","0","-1/2","0","0","1/2","0","0","0","-1/2","0","0","1/2","-1/2","1/2","0","-1/2","-1/2","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2"],["0","0","0","0","1/2","0","-1/2","1/2","-1/2","1/2","0","1/2","0","0","1/2","0","0","0","-1/2","0","1/2","0","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","-1/2","0","0","1/2","0","0","-1/2","0","0","1/2","0","-1/2","0","-1/2","-1/2","-1/2","0","-1/2","1/2","0","1/2","1/2","0","1/2","0","1/2","0","0","0","-1/2","0","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","1/2","0","0","0","0","-1/2","0","1/2","0","0","0","0","-1/2","0","1/2","-1/2","1/2","-1/2","0","-1/2","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","1/2","0"],["0","0","0","0","0","1/2","-1/2","1/2","-1/2","1/2","1/2","0","0","0","0","1/2","0","0","0","-1/2","0","1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","1/2","0","0","-1/2","0","0","1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","1/2","1/2","0","1/2","1/2","0","1/2","0","0","0","0","0","-1/2","0","0","1/2","0","-1/2","-1/2","0","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","1/2","0","0","0","0","0","-1/2","1/2","0","0","0","0","0","-1/2","1/2","-1/2","1/2","-1/2","-1/2","0","0","0","0","0","-1/2","0","0","0","-1/2","0","0","-1/2","0","1/2"],["-1/2","1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","-1/2","-1/2","-1/2","-1/2","1/2","-1/2","-1/2","-1/2","0","0","0","0","0","-1/2","1/2","0","0","0","0","0","-1/2","-1/2","-1/2","1/2","-1/2","-1/2","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","0","0","0","0","-1/2","-1/2","-1/2","1/2","1/2","1/2","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","0","0","0","0","0","1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","0"],["-1/2","0","1/2","0","0","0","-1/2","0","1/2","0","0","0","0","-1/2","-1/2","-1/2","1/2","0","0","0","1/2","1/2","0","0","0","-1/2","0","1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","1/2","0","0","1/2","1/2","1/2","0","0","0","-1/2","0","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","0","1/2","1/2","1/2","0","0","0","1/2","1/2","1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","-1/2","0","1/2","0","0","0","0","1/2","0","-1/2","0","0","0","-1/2","0","1/2","0","0","0","-1/2","0","-1/2","-1/2","-1/2","1/2","0","0","0","1/2","1/2","1/2","0","0"],["-1/2","0","0","1/2","0","0","-1/2","0","0","-1/2","0","0","-1/2","0","-1/2","-1/2","0","-1/2","0","0","0","0","-1/2","-1/2","0","-1/2","0","0","1/2","0","0","-1/2","0","-1/2","-1/2","0","0","0","1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","1/2","1/2","0","-1/2","-1/2","0","0","1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","-1/2","0","0","0","1/2","0","0","-1/2","0","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","-1/2","-1/2"],["-1/2","0","0","0","1/2","0","-1/2","0","0","0","-1/2","0","-1/2","-1/2","0","-1/2","0","0","-1/2","0","1/2","0","-1/2","0","-1/2","-1/2","0","0","0","1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","0","0","1/2","0","-1/2","0","-1/2","-1/2","-1/2","0","-1/2","0","-1/2","0","0","-1/2","0","-1/2","0","-1/2","-1/2","1/2","0","1/2","-1/2","0","-1/2","0","1/2","0","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","0","0","-1/2","0","0","0","-1/2","0","0","1/2","0","0","0","-1/2","0","-1/2","0","0","0","-1/2","0","-1/2","-1/2","-1/2","0","-1/2","0","0","-1/2","0","0","-1/2","0","1/2","0"],["-1/2","0","0","0","0","1/2","-1/2","0","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","1/2","0","-1/2","-1/2","-1/2","0","0","0","0","1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","0","0","1/2","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","0","0","-1/2","0","-1/2","-1/2","-1/2","1/2","1/2","0","-1/2","-1/2","0","1/2","0","0","0","0","-1/2","0","-1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","-1/2","0","0","0","0","-1/2","0","1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","-1/2","0","0","-1/2","0","1/2"],["0","1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","0","-1/2","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","1/2","-1/2","0","0","0","1/2","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","1/2","-1/2","0","0","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","-1/2","-1/2","-1/2","-1/2","-1/2","-1/2","0","0","0","0","0","0","-1/2","-1/2","-1/2","1/2","1/2","1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","0","-1/2","1/2","0","0","0","0","-1/2","-1/2","0","0","0","-1/2","1/2","0","0","0","0","1/2","1/2","1/2","-1/2","-1/2","-1/2","0","0"],["0","-1/2","0","1/2","0","0","0","1/2","0","-1/2","0","0","0","1/2","0","0","-1/2","0","1/2","1/2","0","0","-1/2","-1/2","0","0","-1/2","0","1/2","0","0","-1/2","1/2","0","0","-1/2","1/2","1/2","1/2","0","0","-1/2","-1/2","0","-1/2","0","0","0","0","1/2","1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","0","1/2","1/2","1/2","0","0","-1/2","-1/2","0","0","1/2","1/2","0","0","1/2","-1/2","-1/2","0","-1/2","0","0","0","1/2","0","-1/2","0","0","0","0","1/2","0","-1/2","0","0","0","1/2","0","-1/2","0","0","1/2","0","-1/2","0","0","1/2","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2"],["0","-1/2","0","0","1/2","0","0","1/2","0","0","-1/2","0","0","0","1/2","0","-1/2","1/2","0","1/2","1/2","0","-1/2","0","-1/2","0","-1/2","0","0","1/2","0","-1/2","0","1/2","0","-1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","-1/2","0","1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","-1/2","0","0","0","1/2","0","0","-1/2","0","0","0","1/2","0","0","-1/2","0","0","1/2","0","0","-1/2","0","1/2","0","0","-1/2","0","1/2","-1/2","0","-1/2","0","-1/2","0","1/2","0"],["0","-1/2","0","0","0","1/2","0","1/2","0","0","0","-1/2","0","0","0","1/2","-1/2","1/2","1/2","0","0","1/2","0","-1/2","-1/2","0","-1/2","0","0","0","1/2","-1/2","0","0","1/2","-1/2","1/2","0","0","0","1/2","0","-1/2","-1/2","-1/2","0","0","1/2","1/2","1/2","0","0","0","-1/2","0","-1/2","-1/2","-1/2","1/2","1/2","0","0","0","1/2","0","-1/2","-1/2","1/2","1/2","0","1/2","0","0","0","-1/2","-1/2","-1/2","0","0","0","1/2","0","0","0","-1/2","0","0","1/2","0","0","0","-1/2","0","1/2","0","0","0","-1/2","1/2","0","0","0","-1/2","1/2","-1/2","-1/2","0","0","0","-1/2","0","1/2"],["0","0","-1/2","1/2","0","0","0","0","-1/2","-1/2","0","0","-1/2","1/2","0","0","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","-1/2","0","0","0","-1/2","1/2","0","0","0","1/2","0","0","-1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","-1/2","0","0","-1/2","0","0","0","1/2","1/2","-1/2","-1/2","0","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","-1/2","0","0","1/2","1/2","-1/2","-1/2","0","0","0","1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","0","0","0","1/2","-1/2","0","0","0","0","-1/2","-1/2","0","0","0","1/2","-1/2","0","0","-1/2","-1/2","0","0","0","-1/2","-1/2","-1/2","-1/2"],["0","0","-1/2","0","1/2","0","0","0","-1/2","0","-1/2","0","-1/2","0","1/2","0","-1/2","0","-1/2","0","0","-1/2","-1/2","0","-1/2","0","0","-1/2","0","1/2","0","0","0","1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","1/2","0","0","-1/2","0","1/2","0","1/2","-1/2","0","-1/2","-1/2","0","-1/2","0","-1/2","0","-1/2","-1/2","0","-1/2","1/2","0","1/2","-1/2","0","-1/2","0","1/2","0","-1/2","0","0","0","0","-1/2","0","-1/2","0","0","0","0","1/2","0","-1/2","0","0","0","-1/2","0","-1/2","0","0","1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","0","-1/2","1/2","0"],["0","0","-1/2","0","0","1/2","0","0","-1/2","0","0","-1/2","-1/2","0","0","1/2","-1/2","0","0","-1/2","-1/2","0","0","-1/2","-1/2","0","0","-1/2","0","0","1/2","0","0","0","1/2","-1/2","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","0","-1/2","0","1/2","0","0","-1/2","1/2","1/2","0","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","0","0","-1/2","-1/2","1/2","1/2","0","0","-1/2","-1/2","1/2","0","0","-1/2","0","0","0","0","-1/2","0","0","-1/2","0","0","0","1/2","0","0","-1/2","0","0","-1/2","0","0","-1/2","0","1/2","0","0","-1/2","-1/2","0","0","-1/2","-1/2","-1/2","0","0","1/2"],["0","0","0","1/2","-1/2","0","0","0","0","-1/2","1/2","0","0","1/2","-1/2","0","0","-1/2","1/2","0","-1/2","0","0","-1/2","1/2","0","0","0","1/2","-1/2","0","0","1/2","-1/2","0","0","1/2","0","1/2","-1/2","0","0","-1/2","1/2","0","0","-1/2","0","-1/2","1/2","0","-1/2","1/2","0","0","-1/2","1/2","0","-1/2","1/2","0","1/2","-1/2","0","0","-1/2","1/2","-1/2","1/2","0","0","-1/2","1/2","0","-1/2","1/2","0","0","0","0","0","0","-1/2","1/2","0","0","0","0","0","-1/2","1/2","0","0","0","0","-1/2","1/2","0","0","0","-1/2","1/2","0","0","-1/2","1/2","0","-1/2","1/2","0","0","-1/2"],["0","0","0","1/2","0","-1/2","0","0","0","-1/2","0","1/2","0","1/2","0","-1/2","0","-1/2","0","1/2","0","-1/2","-1/2","0","1/2","0","0","0","1/2","0","-1/2","0","1/2","0","-1/2","0","0","1/2","1/2","0","-1/2","-1/2","0","1/2","0","0","0","-1/2","-1/2","0","1/2","-1/2","0","1/2","-1/2","0","1/2","0","-1/2","0","1/2","1/2","0","-1/2","-1/2","0","1/2","-1/2","0","1/2","-1/2","0","1/2","-1/2","0","1/2","0","0","0","0","0","0","-1/2","0","1/2","0","0","0","0","-1/2","0","1/2","0","0","0","-1/2","0","1/2","0","0","-1/2","0","1/2","0","-1/2","0","1/2","-1/2","0","1/2","-1/2","0"]]} diff --git a/research/coded-native-caller/CONTROLLER.json b/research/coded-native-caller/CONTROLLER.json new file mode 100644 index 0000000000..49a2f06758 --- /dev/null +++ b/research/coded-native-caller/CONTROLLER.json @@ -0,0 +1,5224 @@ +{ + "ambient_rank": 145, + "boundaries": { + "left": [ + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "1", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "1", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "1", + "0", + "-1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "-1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "-1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "-1", + "0", + "1", + "0", + "-1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ] + ], + "left_program": [ + [ + "SWAP", + 30, + 31 + ], + [ + "SWAP", + 29, + 30 + ], + [ + "SWAP", + 28, + 30 + ], + [ + "SWAP", + 27, + 29 + ], + [ + "SWAP", + 26, + 28 + ], + [ + "SWAP", + 25, + 30 + ], + [ + "SWAP", + 24, + 25 + ], + [ + "SWAP", + 23, + 26 + ], + [ + "SWAP", + 22, + 30 + ], + [ + "SWAP", + 20, + 26 + ], + [ + "SWAP", + 19, + 22 + ], + [ + "SWAP", + 18, + 29 + ], + [ + "SWAP", + 17, + 23 + ], + [ + "SWAP", + 16, + 27 + ], + [ + "SCALE", + 15, + "-1" + ], + [ + "SWAP", + 15, + 31 + ], + [ + "ADD", + 12, + 14, + "1" + ], + [ + "ADD", + 10, + 14, + "-1" + ], + [ + "ADD", + 8, + 14, + "1" + ], + [ + "ADD", + 6, + 14, + "-1" + ], + [ + "ADD", + 4, + 14, + "1" + ], + [ + "ADD", + 2, + 14, + "-1" + ], + [ + "ADD", + 0, + 14, + "1" + ], + [ + "SWAP", + 14, + 15 + ], + [ + "ADD", + 31, + 13, + "1" + ], + [ + "SWAP", + 13, + 30 + ], + [ + "ADD", + 10, + 12, + "1" + ], + [ + "ADD", + 8, + 12, + "-1" + ], + [ + "ADD", + 6, + 12, + "1" + ], + [ + "ADD", + 4, + 12, + "-1" + ], + [ + "ADD", + 2, + 12, + "1" + ], + [ + "ADD", + 0, + 12, + "-1" + ], + [ + "SWAP", + 12, + 14 + ], + [ + "ADD", + 31, + 11, + "-1" + ], + [ + "ADD", + 30, + 11, + "-1" + ], + [ + "SCALE", + 11, + "-1" + ], + [ + "SWAP", + 11, + 29 + ], + [ + "ADD", + 8, + 10, + "1" + ], + [ + "ADD", + 6, + 10, + "-1" + ], + [ + "ADD", + 4, + 10, + "1" + ], + [ + "ADD", + 2, + 10, + "-1" + ], + [ + "ADD", + 0, + 10, + "1" + ], + [ + "SWAP", + 10, + 13 + ], + [ + "ADD", + 31, + 9, + "1" + ], + [ + "ADD", + 30, + 9, + "1" + ], + [ + "ADD", + 29, + 9, + "1" + ], + [ + "SWAP", + 9, + 28 + ], + [ + "ADD", + 6, + 8, + "1" + ], + [ + "ADD", + 4, + 8, + "-1" + ], + [ + "ADD", + 2, + 8, + "1" + ], + [ + "ADD", + 0, + 8, + "-1" + ], + [ + "SWAP", + 8, + 12 + ], + [ + "ADD", + 31, + 7, + "-1" + ], + [ + "ADD", + 30, + 7, + "-1" + ], + [ + "ADD", + 29, + 7, + "-1" + ], + [ + "ADD", + 28, + 7, + "-1" + ], + [ + "SCALE", + 7, + "-1" + ], + [ + "SWAP", + 7, + 27 + ], + [ + "ADD", + 4, + 6, + "1" + ], + [ + "ADD", + 2, + 6, + "-1" + ], + [ + "ADD", + 0, + 6, + "1" + ], + [ + "SWAP", + 6, + 11 + ], + [ + "ADD", + 31, + 5, + "1" + ], + [ + "ADD", + 30, + 5, + "1" + ], + [ + "ADD", + 29, + 5, + "1" + ], + [ + "ADD", + 28, + 5, + "1" + ], + [ + "ADD", + 27, + 5, + "1" + ], + [ + "SWAP", + 5, + 26 + ], + [ + "ADD", + 2, + 4, + "1" + ], + [ + "ADD", + 0, + 4, + "-1" + ], + [ + "SWAP", + 4, + 10 + ], + [ + "ADD", + 31, + 3, + "-1" + ], + [ + "ADD", + 30, + 3, + "-1" + ], + [ + "ADD", + 29, + 3, + "-1" + ], + [ + "ADD", + 28, + 3, + "-1" + ], + [ + "ADD", + 27, + 3, + "-1" + ], + [ + "ADD", + 26, + 3, + "-1" + ], + [ + "SCALE", + 3, + "-1" + ], + [ + "SWAP", + 3, + 25 + ], + [ + "ADD", + 0, + 2, + "1" + ], + [ + "SWAP", + 2, + 9 + ], + [ + "ADD", + 31, + 1, + "1" + ], + [ + "ADD", + 30, + 1, + "1" + ], + [ + "ADD", + 29, + 1, + "1" + ], + [ + "ADD", + 28, + 1, + "1" + ], + [ + "ADD", + 27, + 1, + "1" + ], + [ + "ADD", + 26, + 1, + "1" + ], + [ + "ADD", + 25, + 1, + "1" + ], + [ + "SWAP", + 1, + 24 + ], + [ + "SWAP", + 0, + 8 + ] + ], + "right": [ + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1", + "1", + "-1", + "1", + "-1", + "1", + "-1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1", + "1", + "-1", + "1", + "-1", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1", + "1", + "-1", + "1", + "-1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "-1", + "1", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1", + "1", + "-1", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1", + "1", + "-1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "-1", + "1", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "-1", + "1", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "-1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ] + ], + "right_program": [ + [ + "ADD", + 30, + 31, + "-1" + ], + [ + "ADD", + 29, + 31, + "-1" + ], + [ + "ADD", + 28, + 31, + "-1" + ], + [ + "ADD", + 27, + 31, + "-1" + ], + [ + "SCALE", + 31, + "-1" + ], + [ + "ADD", + 31, + 30, + "-1" + ], + [ + "ADD", + 29, + 30, + "-1" + ], + [ + "ADD", + 28, + 30, + "-1" + ], + [ + "ADD", + 27, + 30, + "-1" + ], + [ + "ADD", + 31, + 29, + "-1" + ], + [ + "ADD", + 28, + 29, + "-1" + ], + [ + "ADD", + 27, + 29, + "-1" + ], + [ + "SCALE", + 29, + "-1" + ], + [ + "ADD", + 31, + 28, + "-1" + ], + [ + "ADD", + 27, + 28, + "-1" + ], + [ + "SWAP", + 28, + 29 + ], + [ + "ADD", + 31, + 27, + "-1" + ], + [ + "SCALE", + 27, + "-1" + ], + [ + "SWAP", + 27, + 29 + ], + [ + "ADD", + 31, + 26, + "1" + ], + [ + "SWAP", + 26, + 29 + ], + [ + "ADD", + 29, + 25, + "-1" + ], + [ + "ADD", + 24, + 25, + "-1" + ], + [ + "SWAP", + 25, + 28 + ], + [ + "ADD", + 28, + 24, + "1" + ], + [ + "SWAP", + 23, + 29 + ], + [ + "SWAP", + 22, + 25 + ], + [ + "SWAP", + 20, + 23 + ], + [ + "SWAP", + 19, + 25 + ], + [ + "SWAP", + 18, + 27 + ], + [ + "SWAP", + 17, + 29 + ], + [ + "SWAP", + 16, + 31 + ], + [ + "ADD", + 14, + 15, + "-1" + ], + [ + "SWAP", + 15, + 30 + ], + [ + "ADD", + 13, + 14, + "-1" + ], + [ + "SWAP", + 14, + 30 + ], + [ + "ADD", + 12, + 13, + "-1" + ], + [ + "SWAP", + 13, + 22 + ], + [ + "ADD", + 11, + 12, + "-1" + ], + [ + "SWAP", + 12, + 30 + ], + [ + "ADD", + 10, + 11, + "-1" + ], + [ + "SWAP", + 11, + 18 + ], + [ + "ADD", + 9, + 10, + "-1" + ], + [ + "SWAP", + 10, + 22 + ], + [ + "ADD", + 8, + 9, + "-1" + ], + [ + "SWAP", + 9, + 26 + ], + [ + "SWAP", + 8, + 30 + ], + [ + "SWAP", + 7, + 16 + ], + [ + "SWAP", + 6, + 18 + ], + [ + "SWAP", + 5, + 20 + ], + [ + "SWAP", + 4, + 22 + ], + [ + "SWAP", + 3, + 24 + ], + [ + "SWAP", + 2, + 26 + ], + [ + "SWAP", + 1, + 28 + ], + [ + "SWAP", + 0, + 30 + ] + ] + }, + "diagonal": [ + [ + -1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1 + ], + [ + -1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 1 + ], + [ + -1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + -1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + -1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + -1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + -1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + -1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + -1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + -1, + 1, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + -1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + -1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + -1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + -1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + -1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + -1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1 + ], + [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 1 + ], + [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ], + [ + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + 1, + 1, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + 1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + 1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + 1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + 1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + 1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + [ + 1, + 1, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 0, + 1, + 1 + ] + ], + "invoice": { + "main": { + "17": 448, + "25": 448, + "33": 448, + "41": 448, + "49": 448, + "57": 448, + "65": 448, + "73": 224, + "145": 224 + }, + "owned_streams_reused_sequentially": 1, + "paid": { + "1": 46446, + "2": 12834, + "3": 4032, + "4": 1836, + "5": 360, + "8": 144, + "16": 448, + "24": 448, + "32": 448, + "40": 448, + "48": 448, + "56": 448, + "64": 448, + "72": 224 + }, + "paid_calls": 69012, + "productive_fields": 10928, + "rank_surplus": 752, + "raw_scalar_record_bound": 1000000000, + "targets": { + "5": 504, + "6": 324, + "7": 1008, + "8": 1674, + "9": 3834, + "17": 448, + "25": 448, + "33": 448, + "41": 448, + "49": 448, + "57": 448, + "65": 448, + "73": 224, + "145": 224 + }, + "thick_calls": 18, + "thick_stages": [ + 0, + 1, + 3, + 5, + 7, + 9, + 11, + 13, + 15, + 17, + 19, + 21, + 23, + 25, + 27, + 29, + 31, + 32 + ], + "thin_queries": 1680, + "whole_idle": { + "16": 448, + "24": 448, + "32": 448, + "40": 448, + "48": 448, + "56": 448, + "64": 448, + "72": 224 + } + }, + "keep_mask": 35047648968703, + "kind": "complex", + "pairs": 16, + "physical_events": [ + [ + "LOCAL", + 0, + 0, + false + ], + [ + "LOCAL", + 1, + 0, + true + ], + [ + "IDLE", + 1, + [ + 0, + 1 + ] + ], + [ + "ADD", + 0, + 2, + 1 + ], + [ + "ADD", + 3, + 1, + -1 + ], + [ + "QUERY_SHEAR", + 2, + 0, + false + ], + [ + "ADD", + 0, + 2, + -1 + ], + [ + "ADD", + 3, + 1, + 1 + ], + [ + "LOCAL", + 3, + 1, + true + ], + [ + "IDLE", + 2, + [ + 0, + 1, + 3 + ] + ], + [ + "ADD", + 2, + 4, + 1 + ], + [ + "ADD", + 5, + 3, + -1 + ], + [ + "QUERY_SHEAR", + 4, + 1, + false + ], + [ + "ADD", + 2, + 4, + -1 + ], + [ + "ADD", + 5, + 3, + 1 + ], + [ + "LOCAL", + 5, + 2, + true + ], + [ + "IDLE", + 3, + [ + 0, + 1, + 3, + 5 + ] + ], + [ + "ADD", + 4, + 6, + 1 + ], + [ + "ADD", + 7, + 5, + -1 + ], + [ + "QUERY_SHEAR", + 6, + 2, + false + ], + [ + "ADD", + 4, + 6, + -1 + ], + [ + "ADD", + 7, + 5, + 1 + ], + [ + "LOCAL", + 7, + 3, + true + ], + [ + "IDLE", + 4, + [ + 0, + 1, + 3, + 5, + 7 + ] + ], + [ + "ADD", + 6, + 8, + 1 + ], + [ + "ADD", + 9, + 7, + -1 + ], + [ + "QUERY_SHEAR", + 8, + 3, + false + ], + [ + "ADD", + 6, + 8, + -1 + ], + [ + "ADD", + 9, + 7, + 1 + ], + [ + "LOCAL", + 9, + 4, + true + ], + [ + "IDLE", + 5, + [ + 0, + 1, + 3, + 5, + 7, + 9 + ] + ], + [ + "ADD", + 8, + 10, + 1 + ], + [ + "ADD", + 11, + 9, + -1 + ], + [ + "QUERY_SHEAR", + 10, + 4, + false + ], + [ + "ADD", + 8, + 10, + -1 + ], + [ + "ADD", + 11, + 9, + 1 + ], + [ + "LOCAL", + 11, + 5, + true + ], + [ + "IDLE", + 6, + [ + 0, + 1, + 3, + 5, + 7, + 9, + 11 + ] + ], + [ + "ADD", + 10, + 12, + 1 + ], + [ + "ADD", + 13, + 11, + -1 + ], + [ + "QUERY_SHEAR", + 12, + 5, + false + ], + [ + "ADD", + 10, + 12, + -1 + ], + [ + "ADD", + 13, + 11, + 1 + ], + [ + "LOCAL", + 13, + 6, + true + ], + [ + "IDLE", + 7, + [ + 0, + 1, + 3, + 5, + 7, + 9, + 11, + 13 + ] + ], + [ + "ADD", + 12, + 14, + 1 + ], + [ + "ADD", + 15, + 13, + -1 + ], + [ + "QUERY_SHEAR", + 14, + 6, + false + ], + [ + "ADD", + 12, + 14, + -1 + ], + [ + "ADD", + 15, + 13, + 1 + ], + [ + "LOCAL", + 15, + 7, + true + ], + [ + "ADD", + 14, + 16, + 1 + ], + [ + "ADD", + 17, + 15, + -1 + ], + [ + "QUERY_SHEAR", + 16, + 7, + false + ], + [ + "ADD", + 14, + 16, + -1 + ], + [ + "ADD", + 17, + 15, + 1 + ], + [ + "LOCAL", + 17, + 8, + true + ], + [ + "ADD", + 16, + 18, + 1 + ], + [ + "ADD", + 19, + 17, + -1 + ], + [ + "QUERY_SHEAR", + 18, + 8, + false + ], + [ + "ADD", + 16, + 18, + -1 + ], + [ + "ADD", + 19, + 17, + 1 + ], + [ + "LOCAL", + 19, + 9, + true + ], + [ + "ADD", + 18, + 20, + 1 + ], + [ + "ADD", + 21, + 19, + -1 + ], + [ + "QUERY_SHEAR", + 20, + 9, + false + ], + [ + "ADD", + 18, + 20, + -1 + ], + [ + "ADD", + 21, + 19, + 1 + ], + [ + "LOCAL", + 21, + 10, + true + ], + [ + "ADD", + 20, + 22, + 1 + ], + [ + "ADD", + 23, + 21, + -1 + ], + [ + "QUERY_SHEAR", + 22, + 10, + false + ], + [ + "ADD", + 20, + 22, + -1 + ], + [ + "ADD", + 23, + 21, + 1 + ], + [ + "LOCAL", + 23, + 11, + true + ], + [ + "ADD", + 22, + 24, + 1 + ], + [ + "ADD", + 25, + 23, + -1 + ], + [ + "QUERY_SHEAR", + 24, + 11, + false + ], + [ + "ADD", + 22, + 24, + -1 + ], + [ + "ADD", + 25, + 23, + 1 + ], + [ + "LOCAL", + 25, + 12, + true + ], + [ + "ADD", + 24, + 26, + 1 + ], + [ + "ADD", + 27, + 25, + -1 + ], + [ + "QUERY_SHEAR", + 26, + 12, + false + ], + [ + "ADD", + 24, + 26, + -1 + ], + [ + "ADD", + 27, + 25, + 1 + ], + [ + "LOCAL", + 27, + 13, + true + ], + [ + "ADD", + 26, + 28, + 1 + ], + [ + "ADD", + 29, + 27, + -1 + ], + [ + "QUERY_SHEAR", + 28, + 13, + false + ], + [ + "ADD", + 26, + 28, + -1 + ], + [ + "ADD", + 29, + 27, + 1 + ], + [ + "LOCAL", + 29, + 14, + true + ], + [ + "ADD", + 28, + 30, + 1 + ], + [ + "ADD", + 31, + 29, + -1 + ], + [ + "QUERY_SHEAR", + 30, + 14, + false + ], + [ + "ADD", + 28, + 30, + -1 + ], + [ + "ADD", + 31, + 29, + 1 + ], + [ + "LOCAL", + 31, + 15, + true + ], + [ + "LOCAL", + 32, + 15, + false + ], + [ + "IDLE", + 7, + [ + 17, + 19, + 21, + 23, + 25, + 27, + 29, + 31, + 32 + ] + ], + [ + "IDLE", + 8, + [ + 19, + 21, + 23, + 25, + 27, + 29, + 31, + 32 + ] + ], + [ + "IDLE", + 9, + [ + 21, + 23, + 25, + 27, + 29, + 31, + 32 + ] + ], + [ + "IDLE", + 10, + [ + 23, + 25, + 27, + 29, + 31, + 32 + ] + ], + [ + "IDLE", + 11, + [ + 25, + 27, + 29, + 31, + 32 + ] + ], + [ + "IDLE", + 12, + [ + 27, + 29, + 31, + 32 + ] + ], + [ + "IDLE", + 13, + [ + 29, + 31, + 32 + ] + ], + [ + "IDLE", + 14, + [ + 31, + 32 + ] + ], + [ + "ADD", + 30, + 28, + 1 + ], + [ + "ADD", + 29, + 31, + -1 + ], + [ + "ADD", + 28, + 26, + 1 + ], + [ + "ADD", + 27, + 29, + -1 + ], + [ + "ADD", + 26, + 24, + 1 + ], + [ + "ADD", + 25, + 27, + -1 + ], + [ + "ADD", + 24, + 22, + 1 + ], + [ + "ADD", + 23, + 25, + -1 + ], + [ + "ADD", + 22, + 20, + 1 + ], + [ + "ADD", + 21, + 23, + -1 + ], + [ + "ADD", + 20, + 18, + 1 + ], + [ + "ADD", + 19, + 21, + -1 + ], + [ + "ADD", + 18, + 16, + 1 + ], + [ + "ADD", + 17, + 19, + -1 + ], + [ + "ADD", + 16, + 14, + 1 + ], + [ + "ADD", + 15, + 17, + -1 + ], + [ + "ADD", + 14, + 12, + 1 + ], + [ + "ADD", + 13, + 15, + -1 + ], + [ + "ADD", + 12, + 10, + 1 + ], + [ + "ADD", + 11, + 13, + -1 + ], + [ + "ADD", + 10, + 8, + 1 + ], + [ + "ADD", + 9, + 11, + -1 + ], + [ + "ADD", + 8, + 6, + 1 + ], + [ + "ADD", + 7, + 9, + -1 + ], + [ + "ADD", + 6, + 4, + 1 + ], + [ + "ADD", + 5, + 7, + -1 + ], + [ + "ADD", + 4, + 2, + 1 + ], + [ + "ADD", + 3, + 5, + -1 + ], + [ + "ADD", + 2, + 0, + 1 + ], + [ + "ADD", + 1, + 3, + -1 + ], + [ + "SIGNED_SWAP", + 0, + 1 + ], + [ + "SIGNED_SWAP", + 2, + 3 + ], + [ + "SIGNED_SWAP", + 4, + 5 + ], + [ + "SIGNED_SWAP", + 6, + 7 + ], + [ + "SIGNED_SWAP", + 8, + 9 + ], + [ + "SIGNED_SWAP", + 10, + 11 + ], + [ + "SIGNED_SWAP", + 12, + 13 + ], + [ + "SIGNED_SWAP", + 14, + 15 + ], + [ + "SIGNED_SWAP", + 16, + 17 + ], + [ + "SIGNED_SWAP", + 18, + 19 + ], + [ + "SIGNED_SWAP", + 20, + 21 + ], + [ + "SIGNED_SWAP", + 22, + 23 + ], + [ + "SIGNED_SWAP", + 24, + 25 + ], + [ + "SIGNED_SWAP", + 26, + 27 + ], + [ + "SIGNED_SWAP", + 28, + 29 + ], + [ + "SIGNED_SWAP", + 30, + 31 + ] + ], + "prefix_pairs": 7 +} diff --git a/research/coded-native-caller/GAUGE.json b/research/coded-native-caller/GAUGE.json new file mode 100644 index 0000000000..69877f1514 --- /dev/null +++ b/research/coded-native-caller/GAUGE.json @@ -0,0 +1,4741 @@ +{ + "chronology": { + "first_unmatched_bridge": { + "event_index": 51, + "from_pair": 7, + "left_word": [ + [ + 15, + -1 + ], + [ + 13, + -1 + ], + [ + 11, + -1 + ], + [ + 9, + -1 + ], + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "right_word": [], + "to_pair": 8 + }, + "full_calls": 18, + "matched_prefix_bridges": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ], + "paid_idles": 15, + "scope": "This records the candidate per-pair gauge policy; it does not prove that every whole-word policy fails.", + "source_sha256": "1f5d6aa267e4e66048818714b5d3b5eae17a58abe91d15deeaa34574f7391a5f" + }, + "complete_gaussian_supplier": false, + "complete_typed_rational_caller": true, + "idle": { + "missing_stage_rejected": true, + "mixed_orientations": true, + "stages": 4 + }, + "local": { + "backward": true, + "forward": true, + "noncommuting_controls": 3, + "wrong_word_controls": 2 + }, + "noncommutative_core": { + "both_scalar_boundaries": true, + "diagonal_words": [ + [ + 18, + 17 + ], + [ + 18, + 17, + 16 + ], + [ + 18, + 17, + 16, + 15 + ], + [ + 18, + 17, + 16, + 15, + 14 + ], + [ + 18, + 17, + 16, + 15, + 14, + 13 + ], + [ + 18, + 17, + 16, + 15, + 14, + 13, + 12 + ], + [ + 18, + 17, + 16, + 15, + 14, + 13, + 12, + 11 + ], + [ + 18, + 17, + 16, + 15, + 14, + 13, + 12, + 11, + 10 + ], + [ + 2, + 1 + ], + [ + 3, + 2, + 1 + ], + [ + 4, + 3, + 2, + 1 + ], + [ + 5, + 4, + 3, + 2, + 1 + ], + [ + 6, + 5, + 4, + 3, + 2, + 1 + ], + [ + 7, + 6, + 5, + 4, + 3, + 2, + 1 + ], + [ + 8, + 7, + 6, + 5, + 4, + 3, + 2, + 1 + ], + [ + 18, + 17, + 16, + 15, + 14, + 13, + 12, + 11, + 10, + 9, + 8, + 7, + 6, + 5, + 4, + 3, + 2, + 1 + ], + [ + 18, + 17 + ], + [ + 18, + 17, + 16 + ], + [ + 18, + 17, + 16, + 15 + ], + [ + 18, + 17, + 16, + 15, + 14 + ], + [ + 18, + 17, + 16, + 15, + 14, + 13 + ], + [ + 18, + 17, + 16, + 15, + 14, + 13, + 12 + ], + [ + 18, + 17, + 16, + 15, + 14, + 13, + 12, + 11 + ], + [ + 18, + 17, + 16, + 15, + 14, + 13, + 12, + 11, + 10 + ], + [ + 2, + 1 + ], + [ + 3, + 2, + 1 + ], + [ + 4, + 3, + 2, + 1 + ], + [ + 5, + 4, + 3, + 2, + 1 + ], + [ + 6, + 5, + 4, + 3, + 2, + 1 + ], + [ + 7, + 6, + 5, + 4, + 3, + 2, + 1 + ], + [ + 8, + 7, + 6, + 5, + 4, + 3, + 2, + 1 + ], + [ + 18, + 17, + 16, + 15, + 14, + 13, + 12, + 11, + 10, + 9, + 8, + 7, + 6, + 5, + 4, + 3, + 2, + 1 + ] + ], + "field_roles": 32, + "freely_noncommuting_stage_letters": 18, + "matrix_entries_checked": 1024, + "physical_events": 154, + "reversed_idle_rejected": true, + "scope": "Independent Q=1 binding of Dugongue frame-aware-native/noncommuting-controller, crediting Cinna Davis PR4470 and Ryanson Jonathan PR4516. Not a new core theorem; physical Q-dependent boundaries remain separate." + }, + "schema": "coded-native-caller-gauge/v1", + "status": "PASS_NONCOMMUTATIVE_CONTROLLER_CORE_AND_GAUGE_IDENTITIES", + "typed_caller": { + "A_evaluations": 34, + "A_inverse_evaluations": 160, + "code_blocks": 66, + "code_evaluations": 194, + "code_field_monomial_passes": 43456, + "denominator_13_realization": "Required for inverse code; fixed-precision scalar closure remains explicit.", + "dense_code_add_bound_each": 6048, + "dense_code_add_bound_total": 1173312, + "emission": [ + { + "execution_order": [ + [ + 0, + 1 + ] + ], + "field": 1, + "op": "CODE" + }, + { + "backward": false, + "op": "CENTER_FREE_FULL", + "pair": 0, + "stage": 0 + }, + { + "execution_order": [ + [ + 0, + 1 + ] + ], + "field": 0, + "op": "CODE" + }, + { + "execution_order": [ + [ + 1, + -1 + ] + ], + "field": 1, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 0, + "stage": 1 + }, + { + "execution_order": [ + [ + 1, + -1 + ] + ], + "field": 0, + "op": "CODE" + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ] + ], + "field": 3, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 1, + "stages": [ + 0, + 1 + ] + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ] + ], + "field": 2, + "op": "CODE" + }, + { + "event": [ + "ADD", + 0, + 2, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 3, + 1, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 2, + 0, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 0, + 2, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 3, + 1, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 3, + -1 + ] + ], + "field": 3, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 1, + "stage": 3 + }, + { + "execution_order": [ + [ + 3, + -1 + ] + ], + "field": 2, + "op": "CODE" + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ] + ], + "field": 5, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 2, + "stages": [ + 0, + 1, + 3 + ] + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ] + ], + "field": 4, + "op": "CODE" + }, + { + "event": [ + "ADD", + 2, + 4, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 5, + 3, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 4, + 1, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 2, + 4, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 5, + 3, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 5, + -1 + ] + ], + "field": 5, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 2, + "stage": 5 + }, + { + "execution_order": [ + [ + 5, + -1 + ] + ], + "field": 4, + "op": "CODE" + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ], + [ + 5, + -1 + ] + ], + "field": 7, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 3, + "stages": [ + 0, + 1, + 3, + 5 + ] + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ], + [ + 5, + -1 + ] + ], + "field": 6, + "op": "CODE" + }, + { + "event": [ + "ADD", + 4, + 6, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 7, + 5, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 6, + 2, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 4, + 6, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 7, + 5, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 7, + -1 + ] + ], + "field": 7, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 3, + "stage": 7 + }, + { + "execution_order": [ + [ + 7, + -1 + ] + ], + "field": 6, + "op": "CODE" + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ], + [ + 5, + -1 + ], + [ + 7, + -1 + ] + ], + "field": 9, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 4, + "stages": [ + 0, + 1, + 3, + 5, + 7 + ] + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ], + [ + 5, + -1 + ], + [ + 7, + -1 + ] + ], + "field": 8, + "op": "CODE" + }, + { + "event": [ + "ADD", + 6, + 8, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 9, + 7, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 8, + 3, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 6, + 8, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 9, + 7, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 9, + -1 + ] + ], + "field": 9, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 4, + "stage": 9 + }, + { + "execution_order": [ + [ + 9, + -1 + ] + ], + "field": 8, + "op": "CODE" + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ], + [ + 5, + -1 + ], + [ + 7, + -1 + ], + [ + 9, + -1 + ] + ], + "field": 11, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 5, + "stages": [ + 0, + 1, + 3, + 5, + 7, + 9 + ] + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ], + [ + 5, + -1 + ], + [ + 7, + -1 + ], + [ + 9, + -1 + ] + ], + "field": 10, + "op": "CODE" + }, + { + "event": [ + "ADD", + 8, + 10, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 11, + 9, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 10, + 4, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 8, + 10, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 11, + 9, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 11, + -1 + ] + ], + "field": 11, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 5, + "stage": 11 + }, + { + "execution_order": [ + [ + 11, + -1 + ] + ], + "field": 10, + "op": "CODE" + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ], + [ + 5, + -1 + ], + [ + 7, + -1 + ], + [ + 9, + -1 + ], + [ + 11, + -1 + ] + ], + "field": 13, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 6, + "stages": [ + 0, + 1, + 3, + 5, + 7, + 9, + 11 + ] + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ], + [ + 5, + -1 + ], + [ + 7, + -1 + ], + [ + 9, + -1 + ], + [ + 11, + -1 + ] + ], + "field": 12, + "op": "CODE" + }, + { + "event": [ + "ADD", + 10, + 12, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 13, + 11, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 12, + 5, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 10, + 12, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 13, + 11, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 13, + -1 + ] + ], + "field": 13, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 6, + "stage": 13 + }, + { + "execution_order": [ + [ + 13, + -1 + ] + ], + "field": 12, + "op": "CODE" + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ], + [ + 5, + -1 + ], + [ + 7, + -1 + ], + [ + 9, + -1 + ], + [ + 11, + -1 + ], + [ + 13, + -1 + ] + ], + "field": 15, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 7, + "stages": [ + 0, + 1, + 3, + 5, + 7, + 9, + 11, + 13 + ] + }, + { + "execution_order": [ + [ + 0, + 1 + ], + [ + 1, + -1 + ], + [ + 3, + -1 + ], + [ + 5, + -1 + ], + [ + 7, + -1 + ], + [ + 9, + -1 + ], + [ + 11, + -1 + ], + [ + 13, + -1 + ] + ], + "field": 14, + "op": "CODE" + }, + { + "event": [ + "ADD", + 12, + 14, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 15, + 13, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 14, + 6, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 12, + 14, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 15, + 13, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 15, + -1 + ] + ], + "field": 15, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 7, + "stage": 15 + }, + { + "execution_order": [ + [ + 15, + -1 + ] + ], + "field": 14, + "op": "CODE" + }, + { + "event": [ + "ADD", + 14, + 16, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 17, + 15, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 16, + 7, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 14, + 16, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 17, + 15, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 17, + -1 + ] + ], + "field": 17, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 8, + "stage": 17 + }, + { + "execution_order": [ + [ + 17, + -1 + ] + ], + "field": 16, + "op": "CODE" + }, + { + "event": [ + "ADD", + 16, + 18, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 19, + 17, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 18, + 8, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 16, + 18, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 19, + 17, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 19, + -1 + ] + ], + "field": 19, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 9, + "stage": 19 + }, + { + "execution_order": [ + [ + 19, + -1 + ] + ], + "field": 18, + "op": "CODE" + }, + { + "event": [ + "ADD", + 18, + 20, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 21, + 19, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 20, + 9, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 18, + 20, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 21, + 19, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 21, + -1 + ] + ], + "field": 21, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 10, + "stage": 21 + }, + { + "execution_order": [ + [ + 21, + -1 + ] + ], + "field": 20, + "op": "CODE" + }, + { + "event": [ + "ADD", + 20, + 22, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 23, + 21, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 22, + 10, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 20, + 22, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 23, + 21, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 23, + -1 + ] + ], + "field": 23, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 11, + "stage": 23 + }, + { + "execution_order": [ + [ + 23, + -1 + ] + ], + "field": 22, + "op": "CODE" + }, + { + "event": [ + "ADD", + 22, + 24, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 25, + 23, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 24, + 11, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 22, + 24, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 25, + 23, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 25, + -1 + ] + ], + "field": 25, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 12, + "stage": 25 + }, + { + "execution_order": [ + [ + 25, + -1 + ] + ], + "field": 24, + "op": "CODE" + }, + { + "event": [ + "ADD", + 24, + 26, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 27, + 25, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 26, + 12, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 24, + 26, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 27, + 25, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 27, + -1 + ] + ], + "field": 27, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 13, + "stage": 27 + }, + { + "execution_order": [ + [ + 27, + -1 + ] + ], + "field": 26, + "op": "CODE" + }, + { + "event": [ + "ADD", + 26, + 28, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 29, + 27, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 28, + 13, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 26, + 28, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 29, + 27, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 29, + -1 + ] + ], + "field": 29, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 14, + "stage": 29 + }, + { + "execution_order": [ + [ + 29, + -1 + ] + ], + "field": 28, + "op": "CODE" + }, + { + "event": [ + "ADD", + 28, + 30, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 31, + 29, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "QUERY_SHEAR", + 30, + 14, + false + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 28, + 30, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 31, + 29, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "execution_order": [ + [ + 31, + -1 + ] + ], + "field": 31, + "op": "CODE" + }, + { + "backward": true, + "op": "CENTER_FREE_FULL", + "pair": 15, + "stage": 31 + }, + { + "execution_order": [ + [ + 31, + -1 + ] + ], + "field": 30, + "op": "CODE" + }, + { + "execution_order": [ + [ + 32, + 1 + ] + ], + "field": 31, + "op": "CODE" + }, + { + "backward": false, + "op": "CENTER_FREE_FULL", + "pair": 15, + "stage": 32 + }, + { + "execution_order": [ + [ + 32, + 1 + ] + ], + "field": 30, + "op": "CODE" + }, + { + "execution_order": [ + [ + 17, + -1 + ], + [ + 19, + -1 + ], + [ + 21, + -1 + ], + [ + 23, + -1 + ], + [ + 25, + -1 + ], + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 15, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 7, + "stages": [ + 17, + 19, + 21, + 23, + 25, + 27, + 29, + 31, + 32 + ] + }, + { + "execution_order": [ + [ + 17, + -1 + ], + [ + 19, + -1 + ], + [ + 21, + -1 + ], + [ + 23, + -1 + ], + [ + 25, + -1 + ], + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 14, + "op": "CODE" + }, + { + "execution_order": [ + [ + 19, + -1 + ], + [ + 21, + -1 + ], + [ + 23, + -1 + ], + [ + 25, + -1 + ], + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 17, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 8, + "stages": [ + 19, + 21, + 23, + 25, + 27, + 29, + 31, + 32 + ] + }, + { + "execution_order": [ + [ + 19, + -1 + ], + [ + 21, + -1 + ], + [ + 23, + -1 + ], + [ + 25, + -1 + ], + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 16, + "op": "CODE" + }, + { + "execution_order": [ + [ + 21, + -1 + ], + [ + 23, + -1 + ], + [ + 25, + -1 + ], + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 19, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 9, + "stages": [ + 21, + 23, + 25, + 27, + 29, + 31, + 32 + ] + }, + { + "execution_order": [ + [ + 21, + -1 + ], + [ + 23, + -1 + ], + [ + 25, + -1 + ], + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 18, + "op": "CODE" + }, + { + "execution_order": [ + [ + 23, + -1 + ], + [ + 25, + -1 + ], + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 21, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 10, + "stages": [ + 23, + 25, + 27, + 29, + 31, + 32 + ] + }, + { + "execution_order": [ + [ + 23, + -1 + ], + [ + 25, + -1 + ], + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 20, + "op": "CODE" + }, + { + "execution_order": [ + [ + 25, + -1 + ], + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 23, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 11, + "stages": [ + 25, + 27, + 29, + 31, + 32 + ] + }, + { + "execution_order": [ + [ + 25, + -1 + ], + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 22, + "op": "CODE" + }, + { + "execution_order": [ + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 25, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 12, + "stages": [ + 27, + 29, + 31, + 32 + ] + }, + { + "execution_order": [ + [ + 27, + -1 + ], + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 24, + "op": "CODE" + }, + { + "execution_order": [ + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 27, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 13, + "stages": [ + 29, + 31, + 32 + ] + }, + { + "execution_order": [ + [ + 29, + -1 + ], + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 26, + "op": "CODE" + }, + { + "execution_order": [ + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 29, + "op": "CODE" + }, + { + "op": "PAID_IDLE", + "pair": 14, + "stages": [ + 31, + 32 + ] + }, + { + "execution_order": [ + [ + 31, + -1 + ], + [ + 32, + 1 + ] + ], + "field": 28, + "op": "CODE" + }, + { + "event": [ + "ADD", + 30, + 28, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 29, + 31, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 28, + 26, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 27, + 29, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 26, + 24, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 25, + 27, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 24, + 22, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 23, + 25, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 22, + 20, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 21, + 23, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 20, + 18, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 19, + 21, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 18, + 16, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 17, + 19, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 16, + 14, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 15, + 17, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 14, + 12, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 13, + 15, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 12, + 10, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 11, + 13, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 10, + 8, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 9, + 11, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 8, + 6, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 7, + 9, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 6, + 4, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 5, + 7, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 4, + 2, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 3, + 5, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 2, + 0, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "ADD", + 1, + 3, + -1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 0, + 1 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 2, + 3 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 4, + 5 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 6, + 7 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 8, + 9 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 10, + 11 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 12, + 13 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 14, + 15 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 16, + 17 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 18, + 19 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 20, + 21 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 22, + 23 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 24, + 25 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 26, + 27 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 28, + 29 + ], + "op": "RETAINED_EVENT" + }, + { + "event": [ + "SIGNED_SWAP", + 30, + 31 + ], + "op": "RETAINED_EVENT" + } + ], + "endpoint": [ + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 0 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 1 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 2 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 3 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ], + [ + 23, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25, + 23 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 4 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ], + [ + 23, + -1 + ], + [ + 21, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25, + 23, + 21 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 5 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ], + [ + 23, + -1 + ], + [ + 21, + -1 + ], + [ + 19, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25, + 23, + 21, + 19 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 6 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ], + [ + 23, + -1 + ], + [ + 21, + -1 + ], + [ + 19, + -1 + ], + [ + 17, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25, + 23, + 21, + 19, + 17 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 7 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 1, + 0 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 8 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 3, + 1, + 0 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 9 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 5, + 3, + 1, + 0 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 10 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 7, + 5, + 3, + 1, + 0 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 11 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 9, + -1 + ], + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 9, + 7, + 5, + 3, + 1, + 0 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 12 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 11, + -1 + ], + [ + 9, + -1 + ], + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 11, + 9, + 7, + 5, + 3, + 1, + 0 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 13 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 13, + -1 + ], + [ + 11, + -1 + ], + [ + 9, + -1 + ], + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 13, + 11, + 9, + 7, + 5, + 3, + 1, + 0 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 14 + }, + { + "central_exponent": -1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ], + [ + 23, + -1 + ], + [ + 21, + -1 + ], + [ + 19, + -1 + ], + [ + 17, + -1 + ], + [ + 15, + -1 + ], + [ + 13, + -1 + ], + [ + 11, + -1 + ], + [ + 9, + -1 + ], + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25, + 23, + 21, + 19, + 17, + 15, + 13, + 11, + 9, + 7, + 5, + 3, + 1, + 0 + ], + "operator": "Q^-1 B D", + "plain_gaussian_after_free_postdecode": false, + "role": 15 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 16 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 17 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 18 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 19 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ], + [ + 23, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25, + 23 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 20 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ], + [ + 23, + -1 + ], + [ + 21, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25, + 23, + 21 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 21 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ], + [ + 23, + -1 + ], + [ + 21, + -1 + ], + [ + 19, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25, + 23, + 21, + 19 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 22 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ], + [ + 23, + -1 + ], + [ + 21, + -1 + ], + [ + 19, + -1 + ], + [ + 17, + -1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25, + 23, + 21, + 19, + 17 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 23 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 1, + 0 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 24 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 3, + 1, + 0 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 25 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 5, + 3, + 1, + 0 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 26 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 7, + 5, + 3, + 1, + 0 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 27 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 9, + -1 + ], + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 9, + 7, + 5, + 3, + 1, + 0 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 28 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 11, + -1 + ], + [ + 9, + -1 + ], + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 11, + 9, + 7, + 5, + 3, + 1, + 0 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 29 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 13, + -1 + ], + [ + 11, + -1 + ], + [ + 9, + -1 + ], + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 13, + 11, + 9, + 7, + 5, + 3, + 1, + 0 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 30 + }, + { + "central_exponent": 1, + "code_word_left_to_right": [ + [ + 32, + 1 + ], + [ + 31, + -1 + ], + [ + 29, + -1 + ], + [ + 27, + -1 + ], + [ + 25, + -1 + ], + [ + 23, + -1 + ], + [ + 21, + -1 + ], + [ + 19, + -1 + ], + [ + 17, + -1 + ], + [ + 15, + -1 + ], + [ + 13, + -1 + ], + [ + 11, + -1 + ], + [ + 9, + -1 + ], + [ + 7, + -1 + ], + [ + 5, + -1 + ], + [ + 3, + -1 + ], + [ + 1, + -1 + ], + [ + 0, + 1 + ] + ], + "gaussian_stages": [ + 32, + 31, + 29, + 27, + 25, + 23, + 21, + 19, + 17, + 15, + 13, + 11, + 9, + 7, + 5, + 3, + 1, + 0 + ], + "operator": "B D Q", + "plain_gaussian_after_free_postdecode": true, + "role": 31 + } + ], + "factored_code_adds_each": 896, + "factored_code_adds_total": 173824, + "factored_code_clears_total": 3104, + "factored_code_owned_temporaries": 8, + "helper_reward_multiplicity": 18, + "independent_helper_inputs": 7344, + "independent_main_inputs": 3584, + "left_boundary_row_parities": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1 + ], + "positive_half_postdecode": [ + { + "execution_order": [ + [ + 32, + -1 + ], + [ + 31, + 1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 16 + }, + { + "execution_order": [ + [ + 32, + -1 + ], + [ + 31, + 1 + ], + [ + 29, + 1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 17 + }, + { + "execution_order": [ + [ + 32, + -1 + ], + [ + 31, + 1 + ], + [ + 29, + 1 + ], + [ + 27, + 1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 18 + }, + { + "execution_order": [ + [ + 32, + -1 + ], + [ + 31, + 1 + ], + [ + 29, + 1 + ], + [ + 27, + 1 + ], + [ + 25, + 1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 19 + }, + { + "execution_order": [ + [ + 32, + -1 + ], + [ + 31, + 1 + ], + [ + 29, + 1 + ], + [ + 27, + 1 + ], + [ + 25, + 1 + ], + [ + 23, + 1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 20 + }, + { + "execution_order": [ + [ + 32, + -1 + ], + [ + 31, + 1 + ], + [ + 29, + 1 + ], + [ + 27, + 1 + ], + [ + 25, + 1 + ], + [ + 23, + 1 + ], + [ + 21, + 1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 21 + }, + { + "execution_order": [ + [ + 32, + -1 + ], + [ + 31, + 1 + ], + [ + 29, + 1 + ], + [ + 27, + 1 + ], + [ + 25, + 1 + ], + [ + 23, + 1 + ], + [ + 21, + 1 + ], + [ + 19, + 1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 22 + }, + { + "execution_order": [ + [ + 32, + -1 + ], + [ + 31, + 1 + ], + [ + 29, + 1 + ], + [ + 27, + 1 + ], + [ + 25, + 1 + ], + [ + 23, + 1 + ], + [ + 21, + 1 + ], + [ + 19, + 1 + ], + [ + 17, + 1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 23 + }, + { + "execution_order": [ + [ + 1, + 1 + ], + [ + 0, + -1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 24 + }, + { + "execution_order": [ + [ + 3, + 1 + ], + [ + 1, + 1 + ], + [ + 0, + -1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 25 + }, + { + "execution_order": [ + [ + 5, + 1 + ], + [ + 3, + 1 + ], + [ + 1, + 1 + ], + [ + 0, + -1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 26 + }, + { + "execution_order": [ + [ + 7, + 1 + ], + [ + 5, + 1 + ], + [ + 3, + 1 + ], + [ + 1, + 1 + ], + [ + 0, + -1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 27 + }, + { + "execution_order": [ + [ + 9, + 1 + ], + [ + 7, + 1 + ], + [ + 5, + 1 + ], + [ + 3, + 1 + ], + [ + 1, + 1 + ], + [ + 0, + -1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 28 + }, + { + "execution_order": [ + [ + 11, + 1 + ], + [ + 9, + 1 + ], + [ + 7, + 1 + ], + [ + 5, + 1 + ], + [ + 3, + 1 + ], + [ + 1, + 1 + ], + [ + 0, + -1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 29 + }, + { + "execution_order": [ + [ + 13, + 1 + ], + [ + 11, + 1 + ], + [ + 9, + 1 + ], + [ + 7, + 1 + ], + [ + 5, + 1 + ], + [ + 3, + 1 + ], + [ + 1, + 1 + ], + [ + 0, + -1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 30 + }, + { + "execution_order": [ + [ + 32, + -1 + ], + [ + 31, + 1 + ], + [ + 29, + 1 + ], + [ + 27, + 1 + ], + [ + 25, + 1 + ], + [ + 23, + 1 + ], + [ + 21, + 1 + ], + [ + 19, + 1 + ], + [ + 17, + 1 + ], + [ + 15, + 1 + ], + [ + 13, + 1 + ], + [ + 11, + 1 + ], + [ + 9, + 1 + ], + [ + 7, + 1 + ], + [ + 5, + 1 + ], + [ + 3, + 1 + ], + [ + 1, + 1 + ], + [ + 0, + -1 + ] + ], + "op": "OUTPUT_CODE_INVERSE", + "role": 31 + } + ], + "positive_half_postdecode_adds": 86912, + "positive_half_postdecode_clears": 1552, + "positive_half_postdecode_evaluations": 97, + "positive_half_postdecode_monomial_passes": 21728, + "recursive_delta_vs_retained_caller": { + "rank_8": -144 + }, + "right_boundary_column_parities": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1, + 1 + ], + "shared_owned_code_temporaries": 112, + "status": "EXACT_TYPED_CODED_ENDPOINT_RECIPE_NOT_GAUSSIAN_SUPPLIER_ADMISSION" + } +} diff --git a/research/coded-native-caller/GAUGE.md b/research/coded-native-caller/GAUGE.md new file mode 100644 index 0000000000..13269f7b1f --- /dev/null +++ b/research/coded-native-caller/GAUGE.md @@ -0,0 +1,77 @@ +# Deferred native code: exact local transport and the actual caller junction + +Apache-2.0. Substantial OpenAI Codex assistance. Credit PR4929's center-free code, Cao Yifan's native/controller sources, and the retained compiler and helper lineage. + +The physical wrapper construction in this package supplies a real monomial-conjugate code C_s of A=I-14 P at each FULL stage s, in the common central-line convention. Write Q for the central Gaussian, D_s for that stage's fresh rank-eight Gaussian, and R_s=D_s Q. The physical gate is + + [C_s,R_s]=0. + +Different C_s need not commute each other or Q. Each C_s is supported on the central coordinate and its own fresh block; thus it commutes D_t when t differs from s. Phase-correct native normalizers, rather than the mere binary orthogonality of a route, are needed for these exact operator statements. The raw-dual backward convention uses the stated monomial Q^2 conjugation on X. + +Set H(B)=diag(B,Q^-1 B Q). If B involves only earlier code stages, then [B,D_s]=0. With F_s(C)=diag(D_s,D_s)L(CQ^-1) and B_s(C)=diag(D_s,D_s)U(-QC), direct block multiplication gives + + diag(C_s,I) F_s(C_s) diag(I,C_s) H(B) + = H(C_s B) F_s(I), + diag(C_s^-1,I) B_s(C_s) diag(I,C_s^-1) H(B) + = H(C_s^-1 B) B_s(I). + +All newly exposed pre-Y and post-X codes are fixed nonrecursive owner/address circuits, with the explicit local bill in PHYSICAL.md. The inverse code has the explicit coefficient 13 denominator inherited from A^-1; that coefficient's allowed implementation and precision remain part of physical closure. There is no assumption that C_s commutes Q or B. + +For a chronological product B_S of codes whose distinct stages comprise an already-paid IDLE D_S, the same relations give + + Q^-1 B_S Q = D_S B_S D_S^-1. + +Pre-Y B_S and post-X B_S therefore install H(B_S) around that paid IDLE. This reuses its actual Gaussian work; it does not add an unpriced IDLE. + +## Exact algebraic replay + +`gauge.py` implements the group algebra of a semidirect product. Q, every C_s and an independent previous-code B freely generate a free group. The commuting D_s act by the automorphisms C_s -> Q^-1 C_s Q while fixing Q, other C_t and B. A canonical reduced free word and an integer D-vector represent each monomial. Thus the replay is symbolic noncommutative algebra, not a numerical matrix sample or an assumption that tensor powers preserve sums. + +The checker compares every block of both displayed identities, a four-stage mixed-orientation IDLE, and controls that retain [C,Q], [B,Q] and [B,C] as nonzero. Reversed update order, the wrong backward exponent and an omitted IDLE stage are rejected. The written block argument establishes applicability to every operator representation satisfying the stated relations; the symbolic checker corroborates its transcription. This is not proof-kernel acceptance. + +## Initial per-pair proof attempt (superseded below) + +The retained main `research/joint-helper-lattice/CONTROLLER.json` has 18 FULL calls at stages 0,1,3,...,31,32 and 15 paidIDLEs. Its seven initial IDLEs are on pairs 1 through 7. Under the declared per-pair gauge policy, after the backward FULL at stage 2 j+1, pairj carries + + W_j=C_(2 j+1)^-1 ... C_3^-1 C_1^-1 C_0. + +For j=0,...,6, the already-paid initial IDLE puts pair(j+1) in the same gauge, so the next bridge has matching gauges. At j=7, pair 7 carries W_7 while pair 8 still carries I: the source has deliberately omitted that initial IDLE. The exact chronology control records that first mismatch and its two symbolic words. Tail IDLEs and the full scalar boundary remain available resources, but the local identities do not establish their complete coded endpoint. + +The recorded mismatch is a stopping control for this particular forward per-pair policy. It is not a lower bound for all caller designs. In particular, a bidirectional gauge, a whole-word factorization or a separately paid junction could change the conclusion. Likewise, a terminal Q^-1 B Q gauge cannot simply be declared a free output code or an independent Gaussian target. A complete favorable caller must bind the actual terminal outputs and its whole invoice before using the supplier compiler or claiming a new kappa. + +## Open next questions + +Can the 16 explicit negative-Q coded output types be admitted with their 15 matched paid IDLE types, or converted to ordinary Gaussian targets for a favorable full bill? The complete coded word below makes that question concrete. The first step is a typed completion identity on one paid-IDLE/negative-output pair; a Gaussian supplier admission and new recursive saving remain unproved. + +## Independent binding of the predecessor noncommuting-stage identity + +Dugongue's existing `research/frame-aware-native/noncommuting-controller/PROOF.md` already proves the universal p16 identity for freely noncommuting stages and a central Q, crediting Cinna Davis / 1337 isnot 1337 #4470 and Ryanson Jonathan #4516. The present Q=I calculation is an independent binding/control for that predecessor theorem, not a new noncommuting-controller theorem. Its README and proof were read during this investigation. + +The retained controller has the following already established algebraic property. Set Q=I, replace every one of its 18 FULL-stage diagonals by a distinct freely noncommuting letter Z_s, and implement each already-paid IDLE as its chronological ordered product. Keep all 154 physical events and both actual 32-by-32 scalar boundary matrices. The resulting 32-by-32 operator matrix is exactly diagonal. Its i-th diagonal is the chronological ordered product of precisely the stages selected by the source's i-th target word. + +The checker proves this finite word identity by expanding all 1,024 entries over the free associative group algebra with rational coefficients. No commutative collection of stage letters is performed. Reversing the first two-stage IDLE is a semantic mutation that fails, although a commuting specialization could miss it. A separate exact 2-by-2 matrix experiment with noncommuting integer stages was used as a discovery check; the registered result is the stronger symbolic identity. + +This is directly useful for the coded caller constructed below. Under H=diag(I,Q), the modified local gauge identities turn the core into scalar L/U steps with decorated stage diagonals Z_s=C_s^epsilon D_s. The core identity therefore accommodates their noncommutativity. It removes one possible obstruction to the proposed construction. It does not remove H from the two physical scalar boundaries, implement those Q-dependent boundaries for free, or establish independent Gaussian terminal jobs. The positive complete-core identity and the unresolved physical entrance/exit interface are separate statements. + +## Complete typed coded caller, superseding the local junction concern + +The direct global proof avoids requiring a separate matching gauge on each pair. Define H=diag(I,Q) on every pair. For each FULL stage s, emit the nonrecursive pre-Y code C_s^epsilon, the center-free native FULL in its actual orientation, and the nonrecursive post-X code C_s^epsilon, with epsilon=+1 for forward and -1 for backward. The resulting block is + + H^-1 diag(Z_s,Z_s) L(I) H (forward), + H^-1 diag(Z_s,Z_s) U(-I) H (backward), + Z_s=C_s^epsilon D_s. + +For each of the 15 actual paid IDLEs, emit its chronological code product on Y, its unchanged paid Gaussian IDLE, and the same chronological code product on X. Since each code commutes the other stages' Gaussian factors, the result is H^-1 diag(Z_word,Z_word) H. Each retained thin query similarly conjugates to its original scalar shear. Every internal ADD bridge preserves X/Y parity, so adjacent H factors cancel. No extra initial IDLE is inserted. The earlier pair 7/pair 8 mismatch therefore identifies only a limitation of the per-pair proof strategy; it does not obstruct this global construction. + +The global final signed swaps are retained. The actual left boundary has pure parity rows (first 16 even, last 16 odd); the right boundary has pure parity columns (first 16 even, last 16 odd). The checker binds all 64 of these facts. Moving H through those scalar boundaries and signed swaps gives the exact 32 main operator blocks + + Q^-1 B_i D_i for i=0,...,15, + B_i D_i Q for i=16,...,31. + +Here D_i is the chronological product of the Gaussian stages selected by the authenticated original target, and B_i is the corresponding chronological product of C_s^epsilon. The ordered words are emitted explicitly in GAUGE.json. This proves a complete *typed coupled/coded endpoint* for 3584 independent main inputs, with all 7344 independent source helpers retained once. It is not the old Gaussian endpoint. The positive-Q half can be postdecoded by B_i^-1; the negative-Q half retains its specified code between the central operation and the remaining Gaussian product. + +GAUGE.json emits every retained event and every inserted code block. There are 66 inserted code blocks, comprising 194 individual code evaluations: 34 A and 160 A^-1. Each code is conjugated by 112 known monomial field maps in each direction, giving 43,456 field-monomial passes before any positive-output decoding. One conservative implementation of a dense code computes (A-I)x, or (A-I)x/13, in 112 owned temporary fields and then adds the result to x. The exact A-I support has 5,936 entries, so this uses at most 6,048 scalar ADDs per code, or 1,173,312 ADDs for the 194 evaluations. The 112 owned temporaries can be reused chronologically; each evaluation initializes and clears them. These counts exclude the separately retained native scalar work, monomial primitive lowering, optional positive-output decoding, routing/storage accounting and fixed-precision realization of denominator 13. They are explicit additional finite costs, not an outer-admission certificate. + +The recursive paid profile differs from the retained caller by precisely 144 rank-eight calls removed. Every original IDLE and thin query remains paid. The source helpers remain independent and productive once per FULL. A new numerical moment cannot count the 16 negative-Q coded outputs as the original Gaussian jobs. Their new job family, a changed compiler/completion theorem, or an actually paid endpoint adapter is the remaining integration question. + +The primary finite scalar realization is the already checked eight-mode program in NORMALIZERS: 896 ADDs, 224 field-monomial passes and 16 owned-CLEAR operations per C evaluation, with 8 reusable owned temporary fields. For the complete typed caller this gives 173,824 ADDs, 43,456 field-monomial passes and 3,104 CLEARs. The dense 112-temporary implementation above is an alternative upper bound, not the primary invoice. If the positive-Q half is explicitly postdecoded to ordinary Gaussian jobs, its 16 inverse code words contain 97 additional C evaluations: 86,912 ADDs, 21,728 monomial passes and 1,552 CLEARs. GAUGE.json emits those optional output decoding words and prices them separately. The typed caller alone has 3584 coded main outputs; after that priced postdecoding 1792 of them are autonomous Gaussian jobs, while 1792 retain the exact negative-Q code. The denominator 13 fixed-precision arithmetic realization remains an explicit assumption/obligation for both recipes. diff --git a/research/coded-native-caller/INDEPENDENT.json b/research/coded-native-caller/INDEPENDENT.json new file mode 100644 index 0000000000..5bb68aafe1 --- /dev/null +++ b/research/coded-native-caller/INDEPENDENT.json @@ -0,0 +1,22 @@ +{ + "addresses_per_owner": 512, + "compiled_gaussian_free_words": 896, + "deterministic_test_vectors": 2, + "fiber_columns": 1, + "imaginary_unit": 256, + "negative_controls": [ + "C does not commute with Q", + "old Y-only correction fails" + ], + "owners_per_bank": 112, + "positive_controls": [ + "signed-map inverse", + "code inverse", + "C commutes with DQ", + "X-only raw-dual correction" + ], + "prime": 65537, + "schema": "coded-native-independent-modular-controls/1", + "scope": "Finite deterministic modular corroboration; not a universal proof, native-word replay, or independent human acceptance.", + "status": "PASS_INDEPENDENT_FINITE_MODULAR_CONTROLS" +} diff --git a/research/coded-native-caller/LICENSE b/research/coded-native-caller/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/coded-native-caller/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/research/coded-native-caller/NORMALIZERS.json b/research/coded-native-caller/NORMALIZERS.json new file mode 100644 index 0000000000..bca92c222c --- /dev/null +++ b/research/coded-native-caller/NORMALIZERS.json @@ -0,0 +1,126 @@ +{ + "clifford_sha256": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962", + "code_sha256": "8be7f3f073b7981ec91c6af43edff0ac8a89f4824ef6026ae758c287dd6c03d0", + "finite_checks": {"absolute_phase_mutations_rejected":112,"exact_endpoint_factor_identities":896,"gaussian_free_compiled_wrappers":896,"monomial_wrappers":896,"omitted_phase_rejections":112,"ports":112,"scalar_basis_recodings":224,"weight_congruence_addresses":57344}, + "local_gauge_bill": {"added_recursive_calls":0,"backward_extra_monomial_field_maps_upper":448,"main_wrapper_field_maps":448,"owned_fields_reused":8,"recoding_monomial_field_maps":448,"recoding_owned_clears":32,"recoding_scalar_adds":1792,"recodings":2}, + "mode_columns": [[1,1,1,1,1,1,1,-1,1,-1,-1,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,1,1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,-1,1,-1,1,1,1,0,1,1,1,1,1,1,-1,1,-1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[1,1,0,0,0,0,1,-1,0,0,0,0,1,1,1,1,1,-1,-1,-1,0,0,0,0,0,0,0,-1,-1,-1,-1,1,0,0,0,0,0,0,-1,-1,-1,1,1,1,1,0,0,0,0,0,0,1,1,1,1,1,1,1,-1,-1,-1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,-1,1,0,0,-1,1,1,1,0,-1,-1,0,0,0,0,1,-1,0,0,0,0,0,1,1,1,1,-1,1,1,1,0,0,0,0,0],[1,0,1,0,0,0,0,1,0,1,1,1,1,0,0,0,0,1,1,1,0,0,1,1,1,1,0,1,0,0,0,1,1,1,1,1,0,0,1,1,1,0,0,0,0,1,0,0,1,1,1,0,0,0,1,1,1,1,0,0,0,1,1,1,0,0,0,0,0,0,1,1,1,0,0,0,1,1,0,1,0,1,0,0,0,1,0,1,0,1,1,1,1,0,1,0,0,0,1,0,1,1,1,1,0,0,0,1,1,1,0,0],[1,0,0,1,1,1,0,1,-1,0,0,0,0,1,1,1,-1,0,0,0,0,0,-1,-1,-1,0,-1,-1,0,0,0,0,1,1,1,-1,0,0,0,0,0,-1,-1,-1,-1,-1,0,0,1,1,1,1,1,1,0,0,0,-1,0,0,0,0,0,0,-1,-1,-1,1,1,1,0,0,0,0,0,0,-1,0,1,0,1,-1,0,0,0,1,0,1,1,0,0,0,1,0,0,-1,-1,-1,1,1,0,0,0,0,-1,-1,-1,-1,-1,-1,0,0],[0,1,1,0,1,1,-1,0,0,1,0,0,0,-1,0,0,1,0,-1,-1,1,1,0,0,-1,-1,0,0,-1,0,0,0,-1,0,0,1,-1,-1,0,1,1,0,0,-1,-1,-1,-1,-1,1,0,0,1,0,0,1,1,0,0,1,0,0,-1,0,0,1,1,0,0,-1,-1,0,0,-1,0,0,-1,0,0,1,-1,0,0,1,0,0,1,1,0,0,1,0,0,0,-1,1,0,-1,-1,-1,-1,0,-1,-1,0,1,0,0,1,0,0,1,1],[0,1,0,1,0,0,-1,0,-1,0,1,1,-1,0,-1,-1,0,-1,0,0,-1,-1,0,0,1,0,1,0,1,0,0,1,1,0,0,1,-1,-1,1,0,0,-1,-1,0,0,-1,-1,-1,-1,0,0,0,1,1,0,0,1,0,-1,0,0,0,-1,-1,0,0,1,-1,0,0,-1,-1,0,0,0,1,0,1,0,0,-1,0,-1,0,0,1,1,0,1,0,1,1,0,-1,0,-1,0,0,-1,0,-1,0,0,-1,0,1,1,-1,0,0,-1,-1],[0,0,1,1,0,0,0,0,1,-1,0,0,1,1,0,0,1,-1,0,0,1,1,-1,-1,0,-1,-1,0,0,-1,-1,-1,0,-1,-1,0,1,1,1,0,0,0,0,1,-1,0,-1,-1,0,1,1,-1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,-1,0,0,0,0,1,-1,-1,0,0,-1,1,-1,1,0,0,1,1,0,0,0,-1,-1,0,0,0,0,1,-1,0,0,0,-1,-1,0,0,1,-1,0,0,0,1,1,-1,-1],[0,0,0,0,1,-1,0,0,0,0,-1,1,0,0,1,-1,0,0,-1,1,1,-1,-1,1,0,0,0,0,0,1,-1,0,0,1,-1,0,-1,1,0,1,-1,-1,1,0,0,0,1,-1,0,-1,1,0,-1,1,-1,1,0,0,0,-1,1,0,1,-1,-1,1,0,0,-1,1,-1,1,0,-1,1,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,-1,1,0,0,0,0,-1,1,0,0,0,-1,1,0,0,-1,1,0,-1,1,1,-1]], + "ports": [ + {"G_rows":[11,13,14,7,16,32,64,128,256],"K_word":[["P",[11,13,14,7,16,32,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]]],"Z_mask":15,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,2,0,0,0,0,0],"matrix_rows":[13,11,14,1,16,32,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,2,0,0,0,0,0]],["P",[13,11,14,1,16,32,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[11,13,14,7,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[11,13,14,7,16,32,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[11,13,14,7,16,32,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[11,13,14,7,16,32,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,0,0,0,0,0],"matrix_rows":[11,12,14,6,16,32,64,128,256],"offset":500,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,0,0,0,0,0]],["P",[11,12,14,6,16,32,64,128,256]],["X",500],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[13,11,14,1,16,32,64,128,256],"offset":11,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,2,0,0,0,0,0]],["P",[13,11,14,1,16,32,64,128,256]],["X",11],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[11,13,14,7,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[11,13,14,7,16,32,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[11,13,14,7,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[11,13,14,7,16,32,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,0,0,0,0,0],"matrix_rows":[11,12,14,6,16,32,64,128,256],"offset":10,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,0,0,0,0,0]],["P",[11,12,14,6,16,32,64,128,256]],["X",10],["phase",2]]}},"orthogonal_transvections":[5,15],"port":0,"q":11}, + {"G_rows":[19,21,22,8,7,32,64,128,256],"K_word":[["P",[19,21,22,8,7,32,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]]],"Z_mask":23,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,2,0,0,0,0],"matrix_rows":[21,19,22,8,1,32,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,2,0,0,0,0]],["P",[21,19,22,8,1,32,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[19,21,22,8,7,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[19,21,22,8,7,32,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[19,21,22,8,7,32,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[19,21,22,8,7,32,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,2,0,0,0,0],"matrix_rows":[19,20,22,8,6,32,64,128,256],"offset":492,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,2,0,0,0,0]],["P",[19,20,22,8,6,32,64,128,256]],["X",492],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,2,0,0,0,0],"matrix_rows":[21,19,22,8,1,32,64,128,256],"offset":19,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,2,0,0,0,0]],["P",[21,19,22,8,1,32,64,128,256]],["X",19],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[19,21,22,8,7,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[19,21,22,8,7,32,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[19,21,22,8,7,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[19,21,22,8,7,32,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,2,0,0,0,0],"matrix_rows":[19,20,22,8,6,32,64,128,256],"offset":18,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,2,0,0,0,0]],["P",[19,20,22,8,6,32,64,128,256]],["X",18],["phase",2]]}},"orthogonal_transvections":[5,23],"port":1,"q":19}, + {"G_rows":[35,37,38,8,16,7,64,128,256],"K_word":[["P",[35,37,38,8,16,7,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]]],"Z_mask":39,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,2,0,0,0],"matrix_rows":[37,35,38,8,16,1,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,2,0,0,0]],["P",[37,35,38,8,16,1,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[35,37,38,8,16,7,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[35,37,38,8,16,7,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[35,37,38,8,16,7,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[35,37,38,8,16,7,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,2,0,0,0],"matrix_rows":[35,36,38,8,16,6,64,128,256],"offset":476,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,2,0,0,0]],["P",[35,36,38,8,16,6,64,128,256]],["X",476],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,2,0,0,0],"matrix_rows":[37,35,38,8,16,1,64,128,256],"offset":35,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,2,0,0,0]],["P",[37,35,38,8,16,1,64,128,256]],["X",35],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[35,37,38,8,16,7,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[35,37,38,8,16,7,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[35,37,38,8,16,7,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[35,37,38,8,16,7,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,2,0,0,0],"matrix_rows":[35,36,38,8,16,6,64,128,256],"offset":34,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,2,0,0,0]],["P",[35,36,38,8,16,6,64,128,256]],["X",34],["phase",2]]}},"orthogonal_transvections":[5,39],"port":2,"q":35}, + {"G_rows":[67,69,70,8,16,32,7,128,256],"K_word":[["P",[67,69,70,8,16,32,7,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]]],"Z_mask":71,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,0,2,0,0],"matrix_rows":[69,67,70,8,16,32,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,0,2,0,0]],["P",[69,67,70,8,16,32,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[67,69,70,8,16,32,7,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[67,69,70,8,16,32,7,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[67,69,70,8,16,32,7,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[67,69,70,8,16,32,7,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,2,0,0],"matrix_rows":[67,68,70,8,16,32,6,128,256],"offset":444,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,2,0,0]],["P",[67,68,70,8,16,32,6,128,256]],["X",444],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,0,2,0,0],"matrix_rows":[69,67,70,8,16,32,1,128,256],"offset":67,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,0,2,0,0]],["P",[69,67,70,8,16,32,1,128,256]],["X",67],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[67,69,70,8,16,32,7,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[67,69,70,8,16,32,7,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[67,69,70,8,16,32,7,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[67,69,70,8,16,32,7,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,2,0,0],"matrix_rows":[67,68,70,8,16,32,6,128,256],"offset":66,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,2,0,0]],["P",[67,68,70,8,16,32,6,128,256]],["X",66],["phase",2]]}},"orthogonal_transvections":[5,71],"port":3,"q":67}, + {"G_rows":[131,133,134,8,16,32,64,7,256],"K_word":[["P",[131,133,134,8,16,32,64,7,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]]],"Z_mask":135,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,0,0,2,0],"matrix_rows":[133,131,134,8,16,32,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,0,0,2,0]],["P",[133,131,134,8,16,32,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[131,133,134,8,16,32,64,7,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[131,133,134,8,16,32,64,7,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[131,133,134,8,16,32,64,7,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[131,133,134,8,16,32,64,7,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,0,2,0],"matrix_rows":[131,132,134,8,16,32,64,6,256],"offset":380,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,0,2,0]],["P",[131,132,134,8,16,32,64,6,256]],["X",380],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,0,0,2,0],"matrix_rows":[133,131,134,8,16,32,64,1,256],"offset":131,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,0,0,2,0]],["P",[133,131,134,8,16,32,64,1,256]],["X",131],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[131,133,134,8,16,32,64,7,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[131,133,134,8,16,32,64,7,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[131,133,134,8,16,32,64,7,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[131,133,134,8,16,32,64,7,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,0,2,0],"matrix_rows":[131,132,134,8,16,32,64,6,256],"offset":130,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,0,2,0]],["P",[131,132,134,8,16,32,64,6,256]],["X",130],["phase",2]]}},"orthogonal_transvections":[5,135],"port":4,"q":131}, + {"G_rows":[259,261,262,8,16,32,64,128,7],"K_word":[["P",[259,261,262,8,16,32,64,128,7]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]]],"Z_mask":263,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,0,0,0,2],"matrix_rows":[261,259,262,8,16,32,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,0,0,0,2]],["P",[261,259,262,8,16,32,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[259,261,262,8,16,32,64,128,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[259,261,262,8,16,32,64,128,7]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[259,261,262,8,16,32,64,128,7],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[259,261,262,8,16,32,64,128,7]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,0,0,2],"matrix_rows":[259,260,262,8,16,32,64,128,6],"offset":252,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,0,0,2]],["P",[259,260,262,8,16,32,64,128,6]],["X",252],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,0,0,0,2],"matrix_rows":[261,259,262,8,16,32,64,128,1],"offset":259,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,0,0,0,2]],["P",[261,259,262,8,16,32,64,128,1]],["X",259],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[259,261,262,8,16,32,64,128,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[259,261,262,8,16,32,64,128,7]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[259,261,262,8,16,32,64,128,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[259,261,262,8,16,32,64,128,7]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,0,0,2],"matrix_rows":[259,260,262,8,16,32,64,128,6],"offset":258,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,0,0,2]],["P",[259,260,262,8,16,32,64,128,6]],["X",258],["phase",2]]}},"orthogonal_transvections":[5,263],"port":5,"q":259}, + {"G_rows":[13,14,11,7,16,32,64,128,256],"K_word":[["P",[13,14,11,7,16,32,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]]],"Z_mask":15,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,2,0,0,0,0,0],"matrix_rows":[11,14,13,1,16,32,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,2,0,0,0,0,0]],["P",[11,14,13,1,16,32,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[13,14,11,7,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[13,14,11,7,16,32,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[13,14,11,7,16,32,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[13,14,11,7,16,32,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,0,0,0,0,0],"matrix_rows":[13,14,10,6,16,32,64,128,256],"offset":498,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,0,0,0,0,0]],["P",[13,14,10,6,16,32,64,128,256]],["X",498],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[11,14,13,1,16,32,64,128,256],"offset":13,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,2,0,0,0,0,0]],["P",[11,14,13,1,16,32,64,128,256]],["X",13],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[13,14,11,7,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[13,14,11,7,16,32,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[13,14,11,7,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[13,14,11,7,16,32,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,0,0,0,0,0],"matrix_rows":[13,14,10,6,16,32,64,128,256],"offset":12,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,0,0,0,0,0]],["P",[13,14,10,6,16,32,64,128,256]],["X",12],["phase",2]]}},"orthogonal_transvections":[3,15],"port":6,"q":13}, + {"G_rows":[21,22,19,8,7,32,64,128,256],"K_word":[["P",[21,22,19,8,7,32,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]]],"Z_mask":23,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,2,0,0,0,0],"matrix_rows":[19,22,21,8,1,32,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,2,0,0,0,0]],["P",[19,22,21,8,1,32,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[21,22,19,8,7,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[21,22,19,8,7,32,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[21,22,19,8,7,32,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[21,22,19,8,7,32,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,2,0,0,0,0],"matrix_rows":[21,22,18,8,6,32,64,128,256],"offset":490,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,2,0,0,0,0]],["P",[21,22,18,8,6,32,64,128,256]],["X",490],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,2,0,0,0,0],"matrix_rows":[19,22,21,8,1,32,64,128,256],"offset":21,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,2,0,0,0,0]],["P",[19,22,21,8,1,32,64,128,256]],["X",21],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[21,22,19,8,7,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[21,22,19,8,7,32,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[21,22,19,8,7,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[21,22,19,8,7,32,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,2,0,0,0,0],"matrix_rows":[21,22,18,8,6,32,64,128,256],"offset":20,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,2,0,0,0,0]],["P",[21,22,18,8,6,32,64,128,256]],["X",20],["phase",2]]}},"orthogonal_transvections":[3,23],"port":7,"q":21}, + {"G_rows":[37,38,35,8,16,7,64,128,256],"K_word":[["P",[37,38,35,8,16,7,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]]],"Z_mask":39,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,2,0,0,0],"matrix_rows":[35,38,37,8,16,1,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,2,0,0,0]],["P",[35,38,37,8,16,1,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[37,38,35,8,16,7,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[37,38,35,8,16,7,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[37,38,35,8,16,7,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[37,38,35,8,16,7,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,2,0,0,0],"matrix_rows":[37,38,34,8,16,6,64,128,256],"offset":474,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,2,0,0,0]],["P",[37,38,34,8,16,6,64,128,256]],["X",474],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,2,0,0,0],"matrix_rows":[35,38,37,8,16,1,64,128,256],"offset":37,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,2,0,0,0]],["P",[35,38,37,8,16,1,64,128,256]],["X",37],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[37,38,35,8,16,7,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[37,38,35,8,16,7,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[37,38,35,8,16,7,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[37,38,35,8,16,7,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,2,0,0,0],"matrix_rows":[37,38,34,8,16,6,64,128,256],"offset":36,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,2,0,0,0]],["P",[37,38,34,8,16,6,64,128,256]],["X",36],["phase",2]]}},"orthogonal_transvections":[3,39],"port":8,"q":37}, + {"G_rows":[69,70,67,8,16,32,7,128,256],"K_word":[["P",[69,70,67,8,16,32,7,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]]],"Z_mask":71,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,0,2,0,0],"matrix_rows":[67,70,69,8,16,32,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,0,2,0,0]],["P",[67,70,69,8,16,32,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[69,70,67,8,16,32,7,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[69,70,67,8,16,32,7,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[69,70,67,8,16,32,7,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[69,70,67,8,16,32,7,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,2,0,0],"matrix_rows":[69,70,66,8,16,32,6,128,256],"offset":442,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,2,0,0]],["P",[69,70,66,8,16,32,6,128,256]],["X",442],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,0,2,0,0],"matrix_rows":[67,70,69,8,16,32,1,128,256],"offset":69,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,0,2,0,0]],["P",[67,70,69,8,16,32,1,128,256]],["X",69],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[69,70,67,8,16,32,7,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[69,70,67,8,16,32,7,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[69,70,67,8,16,32,7,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[69,70,67,8,16,32,7,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,2,0,0],"matrix_rows":[69,70,66,8,16,32,6,128,256],"offset":68,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,2,0,0]],["P",[69,70,66,8,16,32,6,128,256]],["X",68],["phase",2]]}},"orthogonal_transvections":[3,71],"port":9,"q":69}, + {"G_rows":[133,134,131,8,16,32,64,7,256],"K_word":[["P",[133,134,131,8,16,32,64,7,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]]],"Z_mask":135,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,0,0,2,0],"matrix_rows":[131,134,133,8,16,32,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,0,0,2,0]],["P",[131,134,133,8,16,32,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[133,134,131,8,16,32,64,7,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[133,134,131,8,16,32,64,7,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[133,134,131,8,16,32,64,7,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[133,134,131,8,16,32,64,7,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,0,2,0],"matrix_rows":[133,134,130,8,16,32,64,6,256],"offset":378,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,0,2,0]],["P",[133,134,130,8,16,32,64,6,256]],["X",378],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,0,0,2,0],"matrix_rows":[131,134,133,8,16,32,64,1,256],"offset":133,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,0,0,2,0]],["P",[131,134,133,8,16,32,64,1,256]],["X",133],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[133,134,131,8,16,32,64,7,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[133,134,131,8,16,32,64,7,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[133,134,131,8,16,32,64,7,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[133,134,131,8,16,32,64,7,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,0,2,0],"matrix_rows":[133,134,130,8,16,32,64,6,256],"offset":132,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,0,2,0]],["P",[133,134,130,8,16,32,64,6,256]],["X",132],["phase",2]]}},"orthogonal_transvections":[3,135],"port":10,"q":133}, + {"G_rows":[261,262,259,8,16,32,64,128,7],"K_word":[["P",[261,262,259,8,16,32,64,128,7]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]]],"Z_mask":263,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,0,0,0,2],"matrix_rows":[259,262,261,8,16,32,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,0,0,0,2]],["P",[259,262,261,8,16,32,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[261,262,259,8,16,32,64,128,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[261,262,259,8,16,32,64,128,7]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[261,262,259,8,16,32,64,128,7],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[261,262,259,8,16,32,64,128,7]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,0,0,2],"matrix_rows":[261,262,258,8,16,32,64,128,6],"offset":250,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,0,0,2]],["P",[261,262,258,8,16,32,64,128,6]],["X",250],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,0,0,0,2],"matrix_rows":[259,262,261,8,16,32,64,128,1],"offset":261,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,0,0,0,2]],["P",[259,262,261,8,16,32,64,128,1]],["X",261],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[261,262,259,8,16,32,64,128,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[261,262,259,8,16,32,64,128,7]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[261,262,259,8,16,32,64,128,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[261,262,259,8,16,32,64,128,7]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,0,0,0,0,2],"matrix_rows":[261,262,258,8,16,32,64,128,6],"offset":260,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,0,0,0,0,2]],["P",[261,262,258,8,16,32,64,128,6]],["X",260],["phase",2]]}},"orthogonal_transvections":[3,263],"port":11,"q":261}, + {"G_rows":[41,42,4,35,16,11,64,128,256],"K_word":[["P",[41,42,4,35,16,11,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,2,0,0,0]]],"Z_mask":43,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,1,0,2,0,0,0],"matrix_rows":[35,42,4,41,16,1,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,1,0,1,0,2,0,0,0]],["P",[35,42,4,41,16,1,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,2,0,0,0],"matrix_rows":[41,42,4,35,16,11,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,2,0,0,0]],["P",[41,42,4,35,16,11,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,2,0,0,0],"matrix_rows":[41,42,4,35,16,11,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,2,0,0,0]],["P",[41,42,4,35,16,11,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,2,0,2,0,0,0],"matrix_rows":[41,42,4,34,16,10,64,128,256],"offset":470,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,2,0,2,0,0,0]],["P",[41,42,4,34,16,10,64,128,256]],["X",470],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,3,0,2,0,0,0],"matrix_rows":[35,42,4,41,16,1,64,128,256],"offset":41,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,3,0,3,0,2,0,0,0]],["P",[35,42,4,41,16,1,64,128,256]],["X",41],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,2,0,0,0],"matrix_rows":[41,42,4,35,16,11,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,2,0,0,0]],["P",[41,42,4,35,16,11,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,2,0,0,0],"matrix_rows":[41,42,4,35,16,11,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,2,0,0,0]],["P",[41,42,4,35,16,11,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,2,0,2,0,0,0],"matrix_rows":[41,42,4,34,16,10,64,128,256],"offset":40,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,2,0,2,0,0,0]],["P",[41,42,4,34,16,10,64,128,256]],["X",40],["phase",2]]}},"orthogonal_transvections":[3,43],"port":12,"q":41}, + {"G_rows":[73,74,4,67,16,32,11,128,256],"K_word":[["P",[73,74,4,67,16,32,11,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,2,0,0]]],"Z_mask":75,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,1,0,0,2,0,0],"matrix_rows":[67,74,4,73,16,32,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,1,0,1,0,0,2,0,0]],["P",[67,74,4,73,16,32,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,2,0,0],"matrix_rows":[73,74,4,67,16,32,11,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,2,0,0]],["P",[73,74,4,67,16,32,11,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,2,0,0],"matrix_rows":[73,74,4,67,16,32,11,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,2,0,0]],["P",[73,74,4,67,16,32,11,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,2,0,0,2,0,0],"matrix_rows":[73,74,4,66,16,32,10,128,256],"offset":438,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,2,0,0,2,0,0]],["P",[73,74,4,66,16,32,10,128,256]],["X",438],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,3,0,0,2,0,0],"matrix_rows":[67,74,4,73,16,32,1,128,256],"offset":73,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,3,0,3,0,0,2,0,0]],["P",[67,74,4,73,16,32,1,128,256]],["X",73],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,2,0,0],"matrix_rows":[73,74,4,67,16,32,11,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,2,0,0]],["P",[73,74,4,67,16,32,11,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,2,0,0],"matrix_rows":[73,74,4,67,16,32,11,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,2,0,0]],["P",[73,74,4,67,16,32,11,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,2,0,0,2,0,0],"matrix_rows":[73,74,4,66,16,32,10,128,256],"offset":72,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,2,0,0,2,0,0]],["P",[73,74,4,66,16,32,10,128,256]],["X",72],["phase",2]]}},"orthogonal_transvections":[3,75],"port":13,"q":73}, + {"G_rows":[137,138,4,131,16,32,64,11,256],"K_word":[["P",[137,138,4,131,16,32,64,11,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,2,0]]],"Z_mask":139,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,1,0,0,0,2,0],"matrix_rows":[131,138,4,137,16,32,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,1,0,1,0,0,0,2,0]],["P",[131,138,4,137,16,32,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,2,0],"matrix_rows":[137,138,4,131,16,32,64,11,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,2,0]],["P",[137,138,4,131,16,32,64,11,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,2,0],"matrix_rows":[137,138,4,131,16,32,64,11,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,2,0]],["P",[137,138,4,131,16,32,64,11,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,2,0,0,0,2,0],"matrix_rows":[137,138,4,130,16,32,64,10,256],"offset":374,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,2,0,0,0,2,0]],["P",[137,138,4,130,16,32,64,10,256]],["X",374],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,3,0,0,0,2,0],"matrix_rows":[131,138,4,137,16,32,64,1,256],"offset":137,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,3,0,3,0,0,0,2,0]],["P",[131,138,4,137,16,32,64,1,256]],["X",137],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,2,0],"matrix_rows":[137,138,4,131,16,32,64,11,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,2,0]],["P",[137,138,4,131,16,32,64,11,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,2,0],"matrix_rows":[137,138,4,131,16,32,64,11,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,2,0]],["P",[137,138,4,131,16,32,64,11,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,2,0,0,0,2,0],"matrix_rows":[137,138,4,130,16,32,64,10,256],"offset":136,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,2,0,0,0,2,0]],["P",[137,138,4,130,16,32,64,10,256]],["X",136],["phase",2]]}},"orthogonal_transvections":[3,139],"port":14,"q":137}, + {"G_rows":[265,266,4,259,16,32,64,128,11],"K_word":[["P",[265,266,4,259,16,32,64,128,11]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,0,2]]],"Z_mask":267,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,1,0,0,0,0,2],"matrix_rows":[259,266,4,265,16,32,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,1,0,1,0,0,0,0,2]],["P",[259,266,4,265,16,32,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[265,266,4,259,16,32,64,128,11],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,0,2]],["P",[265,266,4,259,16,32,64,128,11]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[265,266,4,259,16,32,64,128,11],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,0,2]],["P",[265,266,4,259,16,32,64,128,11]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,2,0,0,0,0,2],"matrix_rows":[265,266,4,258,16,32,64,128,10],"offset":246,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,2,0,0,0,0,2]],["P",[265,266,4,258,16,32,64,128,10]],["X",246],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,3,0,0,0,0,2],"matrix_rows":[259,266,4,265,16,32,64,128,1],"offset":265,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,3,0,3,0,0,0,0,2]],["P",[259,266,4,265,16,32,64,128,1]],["X",265],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[265,266,4,259,16,32,64,128,11],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,0,2]],["P",[265,266,4,259,16,32,64,128,11]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[265,266,4,259,16,32,64,128,11],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,0,2]],["P",[265,266,4,259,16,32,64,128,11]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,2,0,0,0,0,2],"matrix_rows":[265,266,4,258,16,32,64,128,10],"offset":264,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,2,0,0,0,0,2]],["P",[265,266,4,258,16,32,64,128,10]],["X",264],["phase",2]]}},"orthogonal_transvections":[3,267],"port":15,"q":265}, + {"G_rows":[49,50,4,8,35,19,64,128,256],"K_word":[["P",[49,50,4,8,35,19,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,2,0,0,0]]],"Z_mask":51,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,1,2,0,0,0],"matrix_rows":[35,50,4,8,49,1,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,1,0,0,1,2,0,0,0]],["P",[35,50,4,8,49,1,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,2,0,0,0],"matrix_rows":[49,50,4,8,35,19,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,2,0,0,0]],["P",[49,50,4,8,35,19,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,2,0,0,0],"matrix_rows":[49,50,4,8,35,19,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,2,0,0,0]],["P",[49,50,4,8,35,19,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,0,2,2,0,0,0],"matrix_rows":[49,50,4,8,34,18,64,128,256],"offset":462,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,2,2,0,0,0]],["P",[49,50,4,8,34,18,64,128,256]],["X",462],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,3,2,0,0,0],"matrix_rows":[35,50,4,8,49,1,64,128,256],"offset":49,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,3,0,0,3,2,0,0,0]],["P",[35,50,4,8,49,1,64,128,256]],["X",49],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,2,0,0,0],"matrix_rows":[49,50,4,8,35,19,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,2,0,0,0]],["P",[49,50,4,8,35,19,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,2,0,0,0],"matrix_rows":[49,50,4,8,35,19,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,2,0,0,0]],["P",[49,50,4,8,35,19,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,0,2,2,0,0,0],"matrix_rows":[49,50,4,8,34,18,64,128,256],"offset":48,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,2,2,0,0,0]],["P",[49,50,4,8,34,18,64,128,256]],["X",48],["phase",2]]}},"orthogonal_transvections":[3,51],"port":16,"q":49}, + {"G_rows":[81,82,4,8,67,32,19,128,256],"K_word":[["P",[81,82,4,8,67,32,19,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,2,0,0]]],"Z_mask":83,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,1,0,2,0,0],"matrix_rows":[67,82,4,8,81,32,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,1,0,0,1,0,2,0,0]],["P",[67,82,4,8,81,32,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,0,2,0,0],"matrix_rows":[81,82,4,8,67,32,19,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,2,0,0]],["P",[81,82,4,8,67,32,19,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,0,2,0,0],"matrix_rows":[81,82,4,8,67,32,19,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,2,0,0]],["P",[81,82,4,8,67,32,19,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,0,2,0,2,0,0],"matrix_rows":[81,82,4,8,66,32,18,128,256],"offset":430,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,2,0,2,0,0]],["P",[81,82,4,8,66,32,18,128,256]],["X",430],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,3,0,2,0,0],"matrix_rows":[67,82,4,8,81,32,1,128,256],"offset":81,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,3,0,0,3,0,2,0,0]],["P",[67,82,4,8,81,32,1,128,256]],["X",81],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,0,2,0,0],"matrix_rows":[81,82,4,8,67,32,19,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,2,0,0]],["P",[81,82,4,8,67,32,19,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,0,2,0,0],"matrix_rows":[81,82,4,8,67,32,19,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,2,0,0]],["P",[81,82,4,8,67,32,19,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,0,2,0,2,0,0],"matrix_rows":[81,82,4,8,66,32,18,128,256],"offset":80,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,2,0,2,0,0]],["P",[81,82,4,8,66,32,18,128,256]],["X",80],["phase",2]]}},"orthogonal_transvections":[3,83],"port":17,"q":81}, + {"G_rows":[145,146,4,8,131,32,64,19,256],"K_word":[["P",[145,146,4,8,131,32,64,19,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,2,0]]],"Z_mask":147,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,1,0,0,2,0],"matrix_rows":[131,146,4,8,145,32,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,1,0,0,1,0,0,2,0]],["P",[131,146,4,8,145,32,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,2,0],"matrix_rows":[145,146,4,8,131,32,64,19,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,2,0]],["P",[145,146,4,8,131,32,64,19,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,2,0],"matrix_rows":[145,146,4,8,131,32,64,19,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,2,0]],["P",[145,146,4,8,131,32,64,19,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,0,2,0,0,2,0],"matrix_rows":[145,146,4,8,130,32,64,18,256],"offset":366,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,2,0,0,2,0]],["P",[145,146,4,8,130,32,64,18,256]],["X",366],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,3,0,0,2,0],"matrix_rows":[131,146,4,8,145,32,64,1,256],"offset":145,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,3,0,0,3,0,0,2,0]],["P",[131,146,4,8,145,32,64,1,256]],["X",145],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,2,0],"matrix_rows":[145,146,4,8,131,32,64,19,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,2,0]],["P",[145,146,4,8,131,32,64,19,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,2,0],"matrix_rows":[145,146,4,8,131,32,64,19,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,2,0]],["P",[145,146,4,8,131,32,64,19,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,0,2,0,0,2,0],"matrix_rows":[145,146,4,8,130,32,64,18,256],"offset":144,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,2,0,0,2,0]],["P",[145,146,4,8,130,32,64,18,256]],["X",144],["phase",2]]}},"orthogonal_transvections":[3,147],"port":18,"q":145}, + {"G_rows":[273,274,4,8,259,32,64,128,19],"K_word":[["P",[273,274,4,8,259,32,64,128,19]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,0,2]]],"Z_mask":275,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,1,0,0,0,2],"matrix_rows":[259,274,4,8,273,32,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,1,0,0,1,0,0,0,2]],["P",[259,274,4,8,273,32,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[273,274,4,8,259,32,64,128,19],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,0,2]],["P",[273,274,4,8,259,32,64,128,19]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[273,274,4,8,259,32,64,128,19],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,0,2]],["P",[273,274,4,8,259,32,64,128,19]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[273,274,4,8,258,32,64,128,18],"offset":238,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,2,0,0,0,2]],["P",[273,274,4,8,258,32,64,128,18]],["X",238],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,3,0,0,0,2],"matrix_rows":[259,274,4,8,273,32,64,128,1],"offset":273,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,3,0,0,3,0,0,0,2]],["P",[259,274,4,8,273,32,64,128,1]],["X",273],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[273,274,4,8,259,32,64,128,19],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,0,2]],["P",[273,274,4,8,259,32,64,128,19]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[273,274,4,8,259,32,64,128,19],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,0,2]],["P",[273,274,4,8,259,32,64,128,19]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[273,274,4,8,258,32,64,128,18],"offset":272,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,2,0,0,0,2]],["P",[273,274,4,8,258,32,64,128,18]],["X",272],["phase",2]]}},"orthogonal_transvections":[3,275],"port":19,"q":273}, + {"G_rows":[161,162,4,8,16,131,64,35,256],"K_word":[["P",[161,162,4,8,16,131,64,35,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,2,0]]],"Z_mask":163,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,1,0,2,0],"matrix_rows":[131,162,4,8,16,161,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"word":[["D",[0,34,0,0,0,34,0,0,0],[2,1,0,0,0,1,0,2,0]],["P",[131,162,4,8,16,161,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,2,0],"matrix_rows":[161,162,4,8,16,131,64,35,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,2,0]],["P",[161,162,4,8,16,131,64,35,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,2,0],"matrix_rows":[161,162,4,8,16,131,64,35,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,2,0]],["P",[161,162,4,8,16,131,64,35,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,0,0,2,0,2,0],"matrix_rows":[161,162,4,8,16,130,64,34,256],"offset":350,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,0,2,0,2,0]],["P",[161,162,4,8,16,130,64,34,256]],["X",350],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,3,0,2,0],"matrix_rows":[131,162,4,8,16,161,64,1,256],"offset":161,"phase":3,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"word":[["D",[0,34,0,0,0,34,0,0,0],[2,3,0,0,0,3,0,2,0]],["P",[131,162,4,8,16,161,64,1,256]],["X",161],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,2,0],"matrix_rows":[161,162,4,8,16,131,64,35,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,2,0]],["P",[161,162,4,8,16,131,64,35,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,2,0],"matrix_rows":[161,162,4,8,16,131,64,35,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,2,0]],["P",[161,162,4,8,16,131,64,35,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,0,0,2,0,2,0],"matrix_rows":[161,162,4,8,16,130,64,34,256],"offset":160,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,0,2,0,2,0]],["P",[161,162,4,8,16,130,64,34,256]],["X",160],["phase",2]]}},"orthogonal_transvections":[3,163],"port":20,"q":161}, + {"G_rows":[289,290,4,8,16,259,64,128,35],"K_word":[["P",[289,290,4,8,16,259,64,128,35]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,0,2]]],"Z_mask":291,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,1,0,0,2],"matrix_rows":[259,290,4,8,16,289,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"word":[["D",[0,34,0,0,0,34,0,0,0],[2,1,0,0,0,1,0,0,2]],["P",[259,290,4,8,16,289,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,0,2],"matrix_rows":[289,290,4,8,16,259,64,128,35],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,0,2]],["P",[289,290,4,8,16,259,64,128,35]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,0,2],"matrix_rows":[289,290,4,8,16,259,64,128,35],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,0,2]],["P",[289,290,4,8,16,259,64,128,35]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,0,0,2,0,0,2],"matrix_rows":[289,290,4,8,16,258,64,128,34],"offset":222,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,0,2,0,0,2]],["P",[289,290,4,8,16,258,64,128,34]],["X",222],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,3,0,0,2],"matrix_rows":[259,290,4,8,16,289,64,128,1],"offset":289,"phase":3,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"word":[["D",[0,34,0,0,0,34,0,0,0],[2,3,0,0,0,3,0,0,2]],["P",[259,290,4,8,16,289,64,128,1]],["X",289],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,0,2],"matrix_rows":[289,290,4,8,16,259,64,128,35],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,0,2]],["P",[289,290,4,8,16,259,64,128,35]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,0,2],"matrix_rows":[289,290,4,8,16,259,64,128,35],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,0,2]],["P",[289,290,4,8,16,259,64,128,35]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,0,0,2,0,0,2],"matrix_rows":[289,290,4,8,16,258,64,128,34],"offset":288,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,0,2,0,0,2]],["P",[289,290,4,8,16,258,64,128,34]],["X",288],["phase",2]]}},"orthogonal_transvections":[3,291],"port":21,"q":289}, + {"G_rows":[193,194,4,8,16,32,131,67,256],"K_word":[["P",[193,194,4,8,16,32,131,67,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,2,0]]],"Z_mask":195,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,0,1,2,0],"matrix_rows":[131,194,4,8,16,32,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"word":[["D",[0,66,0,0,0,0,66,0,0],[2,1,0,0,0,0,1,2,0]],["P",[131,194,4,8,16,32,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,2,0],"matrix_rows":[193,194,4,8,16,32,131,67,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,2,0]],["P",[193,194,4,8,16,32,131,67,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,2,0],"matrix_rows":[193,194,4,8,16,32,131,67,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,2,0]],["P",[193,194,4,8,16,32,131,67,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,0,0,0,2,2,0],"matrix_rows":[193,194,4,8,16,32,130,66,256],"offset":318,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,0,0,2,2,0]],["P",[193,194,4,8,16,32,130,66,256]],["X",318],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,0,3,2,0],"matrix_rows":[131,194,4,8,16,32,193,1,256],"offset":193,"phase":3,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"word":[["D",[0,66,0,0,0,0,66,0,0],[2,3,0,0,0,0,3,2,0]],["P",[131,194,4,8,16,32,193,1,256]],["X",193],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,2,0],"matrix_rows":[193,194,4,8,16,32,131,67,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,2,0]],["P",[193,194,4,8,16,32,131,67,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,2,0],"matrix_rows":[193,194,4,8,16,32,131,67,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,2,0]],["P",[193,194,4,8,16,32,131,67,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,0,0,0,2,2,0],"matrix_rows":[193,194,4,8,16,32,130,66,256],"offset":192,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,0,0,2,2,0]],["P",[193,194,4,8,16,32,130,66,256]],["X",192],["phase",2]]}},"orthogonal_transvections":[3,195],"port":22,"q":193}, + {"G_rows":[321,322,4,8,16,32,259,128,67],"K_word":[["P",[321,322,4,8,16,32,259,128,67]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,0,2]]],"Z_mask":323,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,0,1,0,2],"matrix_rows":[259,322,4,8,16,32,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"word":[["D",[0,66,0,0,0,0,66,0,0],[2,1,0,0,0,0,1,0,2]],["P",[259,322,4,8,16,32,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[321,322,4,8,16,32,259,128,67],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,0,2]],["P",[321,322,4,8,16,32,259,128,67]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[321,322,4,8,16,32,259,128,67],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,0,2]],["P",[321,322,4,8,16,32,259,128,67]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,0,0,0,2,0,2],"matrix_rows":[321,322,4,8,16,32,258,128,66],"offset":190,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,0,0,2,0,2]],["P",[321,322,4,8,16,32,258,128,66]],["X",190],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,0,3,0,2],"matrix_rows":[259,322,4,8,16,32,321,128,1],"offset":321,"phase":3,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"word":[["D",[0,66,0,0,0,0,66,0,0],[2,3,0,0,0,0,3,0,2]],["P",[259,322,4,8,16,32,321,128,1]],["X",321],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[321,322,4,8,16,32,259,128,67],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,0,2]],["P",[321,322,4,8,16,32,259,128,67]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[321,322,4,8,16,32,259,128,67],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,0,2]],["P",[321,322,4,8,16,32,259,128,67]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,0,0,0,2,0,2],"matrix_rows":[321,322,4,8,16,32,258,128,66],"offset":320,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,0,0,2,0,2]],["P",[321,322,4,8,16,32,258,128,66]],["X",320],["phase",2]]}},"orthogonal_transvections":[3,323],"port":23,"q":321}, + {"G_rows":[385,386,4,8,16,32,64,259,131],"K_word":[["P",[385,386,4,8,16,32,64,259,131]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,0,2,2]]],"Z_mask":387,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,0,0,1,2],"matrix_rows":[259,386,4,8,16,32,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,130,0,0,0,0,0,130,0]},"word":[["D",[0,130,0,0,0,0,0,130,0],[2,1,0,0,0,0,0,1,2]],["P",[259,386,4,8,16,32,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,0,2,2],"matrix_rows":[385,386,4,8,16,32,64,259,131],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,0,2,2]],["P",[385,386,4,8,16,32,64,259,131]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,0,2,2],"matrix_rows":[385,386,4,8,16,32,64,259,131],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,0,2,2]],["P",[385,386,4,8,16,32,64,259,131]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,0,0,0,0,2,2],"matrix_rows":[385,386,4,8,16,32,64,258,130],"offset":126,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,0,0,0,2,2]],["P",[385,386,4,8,16,32,64,258,130]],["X",126],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,0,0,3,2],"matrix_rows":[259,386,4,8,16,32,64,385,1],"offset":385,"phase":3,"quadratic_rows":[0,130,0,0,0,0,0,130,0]},"word":[["D",[0,130,0,0,0,0,0,130,0],[2,3,0,0,0,0,0,3,2]],["P",[259,386,4,8,16,32,64,385,1]],["X",385],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,0,2,2],"matrix_rows":[385,386,4,8,16,32,64,259,131],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,0,2,2]],["P",[385,386,4,8,16,32,64,259,131]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,0,2,2],"matrix_rows":[385,386,4,8,16,32,64,259,131],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,0,2,2]],["P",[385,386,4,8,16,32,64,259,131]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,0,0,0,0,2,2],"matrix_rows":[385,386,4,8,16,32,64,258,130],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,0,0,0,0,2,2]],["P",[385,386,4,8,16,32,64,258,130]],["X",384],["phase",2]]}},"orthogonal_transvections":[3,387],"port":24,"q":385}, + {"G_rows":[14,13,11,7,16,32,64,128,256],"K_word":[["P",[14,13,11,7,16,32,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]]],"Z_mask":15,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,2,0,0,0,0,0],"matrix_rows":[14,11,13,1,16,32,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,2,0,0,0,0,0]],["P",[14,11,13,1,16,32,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[14,13,11,7,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[14,13,11,7,16,32,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[14,13,11,7,16,32,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[14,13,11,7,16,32,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,2,0,0,0,0,0],"matrix_rows":[14,13,9,5,16,32,64,128,256],"offset":498,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,0,0]],["P",[14,13,9,5,16,32,64,128,256]],["X",498],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[14,11,13,1,16,32,64,128,256],"offset":14,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,2,0,0,0,0,0]],["P",[14,11,13,1,16,32,64,128,256]],["X",14],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[14,13,11,7,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[14,13,11,7,16,32,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[14,13,11,7,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,0,0,0,0]],["P",[14,13,11,7,16,32,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,2,0,0,0,0,0],"matrix_rows":[14,13,9,5,16,32,64,128,256],"offset":12,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,0,0]],["P",[14,13,9,5,16,32,64,128,256]],["X",12],["phase",2]]}},"orthogonal_transvections":[15],"port":25,"q":14}, + {"G_rows":[22,21,19,8,7,32,64,128,256],"K_word":[["P",[22,21,19,8,7,32,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]]],"Z_mask":23,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,2,0,0,0,0],"matrix_rows":[22,19,21,8,1,32,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,2,0,0,0,0]],["P",[22,19,21,8,1,32,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[22,21,19,8,7,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[22,21,19,8,7,32,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[22,21,19,8,7,32,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[22,21,19,8,7,32,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,0,2,0,0,0,0],"matrix_rows":[22,21,17,8,5,32,64,128,256],"offset":490,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,0,0]],["P",[22,21,17,8,5,32,64,128,256]],["X",490],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,2,0,0,0,0],"matrix_rows":[22,19,21,8,1,32,64,128,256],"offset":22,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,2,0,0,0,0]],["P",[22,19,21,8,1,32,64,128,256]],["X",22],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[22,21,19,8,7,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[22,21,19,8,7,32,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,0,0,0,0],"matrix_rows":[22,21,19,8,7,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,0,0,0,0]],["P",[22,21,19,8,7,32,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,0,2,0,0,0,0],"matrix_rows":[22,21,17,8,5,32,64,128,256],"offset":20,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,0,0]],["P",[22,21,17,8,5,32,64,128,256]],["X",20],["phase",2]]}},"orthogonal_transvections":[23],"port":26,"q":22}, + {"G_rows":[38,37,35,8,16,7,64,128,256],"K_word":[["P",[38,37,35,8,16,7,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]]],"Z_mask":39,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,2,0,0,0],"matrix_rows":[38,35,37,8,16,1,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,2,0,0,0]],["P",[38,35,37,8,16,1,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[38,37,35,8,16,7,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[38,37,35,8,16,7,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[38,37,35,8,16,7,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[38,37,35,8,16,7,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,2,0,0,0],"matrix_rows":[38,37,33,8,16,5,64,128,256],"offset":474,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,0,0]],["P",[38,37,33,8,16,5,64,128,256]],["X",474],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,2,0,0,0],"matrix_rows":[38,35,37,8,16,1,64,128,256],"offset":38,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,2,0,0,0]],["P",[38,35,37,8,16,1,64,128,256]],["X",38],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[38,37,35,8,16,7,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[38,37,35,8,16,7,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[38,37,35,8,16,7,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,2,0,0,0]],["P",[38,37,35,8,16,7,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,2,0,0,0],"matrix_rows":[38,37,33,8,16,5,64,128,256],"offset":36,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,0,0]],["P",[38,37,33,8,16,5,64,128,256]],["X",36],["phase",2]]}},"orthogonal_transvections":[39],"port":27,"q":38}, + {"G_rows":[70,69,67,8,16,32,7,128,256],"K_word":[["P",[70,69,67,8,16,32,7,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]]],"Z_mask":71,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,0,2,0,0],"matrix_rows":[70,67,69,8,16,32,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,0,2,0,0]],["P",[70,67,69,8,16,32,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[70,69,67,8,16,32,7,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[70,69,67,8,16,32,7,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[70,69,67,8,16,32,7,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[70,69,67,8,16,32,7,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,2,0,0],"matrix_rows":[70,69,65,8,16,32,5,128,256],"offset":442,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,0,0]],["P",[70,69,65,8,16,32,5,128,256]],["X",442],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,0,2,0,0],"matrix_rows":[70,67,69,8,16,32,1,128,256],"offset":70,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,0,2,0,0]],["P",[70,67,69,8,16,32,1,128,256]],["X",70],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[70,69,67,8,16,32,7,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[70,69,67,8,16,32,7,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[70,69,67,8,16,32,7,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,2,0,0]],["P",[70,69,67,8,16,32,7,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,2,0,0],"matrix_rows":[70,69,65,8,16,32,5,128,256],"offset":68,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,0,0]],["P",[70,69,65,8,16,32,5,128,256]],["X",68],["phase",2]]}},"orthogonal_transvections":[71],"port":28,"q":70}, + {"G_rows":[134,133,131,8,16,32,64,7,256],"K_word":[["P",[134,133,131,8,16,32,64,7,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]]],"Z_mask":135,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,0,0,2,0],"matrix_rows":[134,131,133,8,16,32,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,0,0,2,0]],["P",[134,131,133,8,16,32,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[134,133,131,8,16,32,64,7,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[134,133,131,8,16,32,64,7,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[134,133,131,8,16,32,64,7,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[134,133,131,8,16,32,64,7,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,0,2,0],"matrix_rows":[134,133,129,8,16,32,64,5,256],"offset":378,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,0,2,0]],["P",[134,133,129,8,16,32,64,5,256]],["X",378],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,0,0,2,0],"matrix_rows":[134,131,133,8,16,32,64,1,256],"offset":134,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,0,0,2,0]],["P",[134,131,133,8,16,32,64,1,256]],["X",134],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[134,133,131,8,16,32,64,7,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[134,133,131,8,16,32,64,7,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,2,0],"matrix_rows":[134,133,131,8,16,32,64,7,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,2,0]],["P",[134,133,131,8,16,32,64,7,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,0,2,0],"matrix_rows":[134,133,129,8,16,32,64,5,256],"offset":132,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,0,2,0]],["P",[134,133,129,8,16,32,64,5,256]],["X",132],["phase",2]]}},"orthogonal_transvections":[135],"port":29,"q":134}, + {"G_rows":[262,261,259,8,16,32,64,128,7],"K_word":[["P",[262,261,259,8,16,32,64,128,7]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]]],"Z_mask":263,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,0,0,0,0,2],"matrix_rows":[262,259,261,8,16,32,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,1,1,0,0,0,0,0,2]],["P",[262,259,261,8,16,32,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[262,261,259,8,16,32,64,128,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[262,261,259,8,16,32,64,128,7]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[262,261,259,8,16,32,64,128,7],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[262,261,259,8,16,32,64,128,7]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,0,0,2],"matrix_rows":[262,261,257,8,16,32,64,128,5],"offset":250,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,0,0,2]],["P",[262,261,257,8,16,32,64,128,5]],["X",250],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,0,0,0,0,2],"matrix_rows":[262,259,261,8,16,32,64,128,1],"offset":262,"phase":3,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"word":[["D",[0,6,6,0,0,0,0,0,0],[2,3,3,0,0,0,0,0,2]],["P",[262,259,261,8,16,32,64,128,1]],["X",262],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[262,261,259,8,16,32,64,128,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[262,261,259,8,16,32,64,128,7]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[262,261,259,8,16,32,64,128,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,0,0,0,0,2]],["P",[262,261,259,8,16,32,64,128,7]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,0,0,2],"matrix_rows":[262,261,257,8,16,32,64,128,5],"offset":260,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,0,0,2]],["P",[262,261,257,8,16,32,64,128,5]],["X",260],["phase",2]]}},"orthogonal_transvections":[263],"port":30,"q":262}, + {"G_rows":[26,25,4,19,11,32,64,128,256],"K_word":[["P",[26,25,4,19,11,32,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,0,0,0,0]]],"Z_mask":27,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,1,2,0,0,0,0],"matrix_rows":[26,19,4,25,1,32,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,1,0,1,2,0,0,0,0]],["P",[26,19,4,25,1,32,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,2,2,0,0,0,0],"matrix_rows":[26,25,4,19,11,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,0,0,0,0]],["P",[26,25,4,19,11,32,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,2,2,0,0,0,0],"matrix_rows":[26,25,4,19,11,32,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,0,0,0,0]],["P",[26,25,4,19,11,32,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,0,0],"matrix_rows":[26,25,4,17,9,32,64,128,256],"offset":486,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,0,0]],["P",[26,25,4,17,9,32,64,128,256]],["X",486],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,3,2,0,0,0,0],"matrix_rows":[26,19,4,25,1,32,64,128,256],"offset":26,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,3,0,3,2,0,0,0,0]],["P",[26,19,4,25,1,32,64,128,256]],["X",26],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,2,2,0,0,0,0],"matrix_rows":[26,25,4,19,11,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,0,0,0,0]],["P",[26,25,4,19,11,32,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,2,2,0,0,0,0],"matrix_rows":[26,25,4,19,11,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,0,0,0,0]],["P",[26,25,4,19,11,32,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,0,0],"matrix_rows":[26,25,4,17,9,32,64,128,256],"offset":24,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,0,0]],["P",[26,25,4,17,9,32,64,128,256]],["X",24],["phase",2]]}},"orthogonal_transvections":[27],"port":31,"q":26}, + {"G_rows":[74,73,4,67,16,32,11,128,256],"K_word":[["P",[74,73,4,67,16,32,11,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,2,0,0]]],"Z_mask":75,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,1,0,0,2,0,0],"matrix_rows":[74,67,4,73,16,32,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,1,0,1,0,0,2,0,0]],["P",[74,67,4,73,16,32,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,2,0,0],"matrix_rows":[74,73,4,67,16,32,11,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,2,0,0]],["P",[74,73,4,67,16,32,11,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,2,0,0],"matrix_rows":[74,73,4,67,16,32,11,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,2,0,0]],["P",[74,73,4,67,16,32,11,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,2,0,0],"matrix_rows":[74,73,4,65,16,32,9,128,256],"offset":438,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,0,0]],["P",[74,73,4,65,16,32,9,128,256]],["X",438],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,3,0,0,2,0,0],"matrix_rows":[74,67,4,73,16,32,1,128,256],"offset":74,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,3,0,3,0,0,2,0,0]],["P",[74,67,4,73,16,32,1,128,256]],["X",74],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,2,0,0],"matrix_rows":[74,73,4,67,16,32,11,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,2,0,0]],["P",[74,73,4,67,16,32,11,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,2,0,0],"matrix_rows":[74,73,4,67,16,32,11,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,2,0,0]],["P",[74,73,4,67,16,32,11,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,2,0,0],"matrix_rows":[74,73,4,65,16,32,9,128,256],"offset":72,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,0,0]],["P",[74,73,4,65,16,32,9,128,256]],["X",72],["phase",2]]}},"orthogonal_transvections":[75],"port":32,"q":74}, + {"G_rows":[138,137,4,131,16,32,64,11,256],"K_word":[["P",[138,137,4,131,16,32,64,11,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,2,0]]],"Z_mask":139,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,1,0,0,0,2,0],"matrix_rows":[138,131,4,137,16,32,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,1,0,1,0,0,0,2,0]],["P",[138,131,4,137,16,32,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,2,0],"matrix_rows":[138,137,4,131,16,32,64,11,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,2,0]],["P",[138,137,4,131,16,32,64,11,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,2,0],"matrix_rows":[138,137,4,131,16,32,64,11,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,2,0]],["P",[138,137,4,131,16,32,64,11,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,2,0],"matrix_rows":[138,137,4,129,16,32,64,9,256],"offset":374,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,2,0]],["P",[138,137,4,129,16,32,64,9,256]],["X",374],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,3,0,0,0,2,0],"matrix_rows":[138,131,4,137,16,32,64,1,256],"offset":138,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,3,0,3,0,0,0,2,0]],["P",[138,131,4,137,16,32,64,1,256]],["X",138],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,2,0],"matrix_rows":[138,137,4,131,16,32,64,11,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,2,0]],["P",[138,137,4,131,16,32,64,11,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,2,0],"matrix_rows":[138,137,4,131,16,32,64,11,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,2,0]],["P",[138,137,4,131,16,32,64,11,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,2,0],"matrix_rows":[138,137,4,129,16,32,64,9,256],"offset":136,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,2,0]],["P",[138,137,4,129,16,32,64,9,256]],["X",136],["phase",2]]}},"orthogonal_transvections":[139],"port":33,"q":138}, + {"G_rows":[266,265,4,259,16,32,64,128,11],"K_word":[["P",[266,265,4,259,16,32,64,128,11]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,0,2]]],"Z_mask":267,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,1,0,0,0,0,2],"matrix_rows":[266,259,4,265,16,32,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,1,0,1,0,0,0,0,2]],["P",[266,259,4,265,16,32,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[266,265,4,259,16,32,64,128,11],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,0,2]],["P",[266,265,4,259,16,32,64,128,11]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[266,265,4,259,16,32,64,128,11],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,0,2]],["P",[266,265,4,259,16,32,64,128,11]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,0,2],"matrix_rows":[266,265,4,257,16,32,64,128,9],"offset":246,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,0,2]],["P",[266,265,4,257,16,32,64,128,9]],["X",246],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,3,0,0,0,0,2],"matrix_rows":[266,259,4,265,16,32,64,128,1],"offset":266,"phase":3,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"word":[["D",[0,10,0,10,0,0,0,0,0],[2,3,0,3,0,0,0,0,2]],["P",[266,259,4,265,16,32,64,128,1]],["X",266],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[266,265,4,259,16,32,64,128,11],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,0,2]],["P",[266,265,4,259,16,32,64,128,11]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[266,265,4,259,16,32,64,128,11],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,0,0,0,0,2]],["P",[266,265,4,259,16,32,64,128,11]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,0,2],"matrix_rows":[266,265,4,257,16,32,64,128,9],"offset":264,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,0,2]],["P",[266,265,4,257,16,32,64,128,9]],["X",264],["phase",2]]}},"orthogonal_transvections":[267],"port":34,"q":266}, + {"G_rows":[50,49,4,8,35,19,64,128,256],"K_word":[["P",[50,49,4,8,35,19,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,2,0,0,0]]],"Z_mask":51,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,1,2,0,0,0],"matrix_rows":[50,35,4,8,49,1,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,1,0,0,1,2,0,0,0]],["P",[50,35,4,8,49,1,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,2,0,0,0],"matrix_rows":[50,49,4,8,35,19,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,2,0,0,0]],["P",[50,49,4,8,35,19,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,2,0,0,0],"matrix_rows":[50,49,4,8,35,19,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,2,0,0,0]],["P",[50,49,4,8,35,19,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,0,0],"matrix_rows":[50,49,4,8,33,17,64,128,256],"offset":462,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,0,0]],["P",[50,49,4,8,33,17,64,128,256]],["X",462],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,3,2,0,0,0],"matrix_rows":[50,35,4,8,49,1,64,128,256],"offset":50,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,3,0,0,3,2,0,0,0]],["P",[50,35,4,8,49,1,64,128,256]],["X",50],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,2,0,0,0],"matrix_rows":[50,49,4,8,35,19,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,2,0,0,0]],["P",[50,49,4,8,35,19,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,2,0,0,0],"matrix_rows":[50,49,4,8,35,19,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,2,0,0,0]],["P",[50,49,4,8,35,19,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,0,0],"matrix_rows":[50,49,4,8,33,17,64,128,256],"offset":48,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,0,0]],["P",[50,49,4,8,33,17,64,128,256]],["X",48],["phase",2]]}},"orthogonal_transvections":[51],"port":35,"q":50}, + {"G_rows":[146,145,4,8,131,32,64,19,256],"K_word":[["P",[146,145,4,8,131,32,64,19,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,2,0]]],"Z_mask":147,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,1,0,0,2,0],"matrix_rows":[146,131,4,8,145,32,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,1,0,0,1,0,0,2,0]],["P",[146,131,4,8,145,32,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,2,0],"matrix_rows":[146,145,4,8,131,32,64,19,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,2,0]],["P",[146,145,4,8,131,32,64,19,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,2,0],"matrix_rows":[146,145,4,8,131,32,64,19,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,2,0]],["P",[146,145,4,8,131,32,64,19,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,2,0],"matrix_rows":[146,145,4,8,129,32,64,17,256],"offset":366,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,0]],["P",[146,145,4,8,129,32,64,17,256]],["X",366],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,3,0,0,2,0],"matrix_rows":[146,131,4,8,145,32,64,1,256],"offset":146,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,3,0,0,3,0,0,2,0]],["P",[146,131,4,8,145,32,64,1,256]],["X",146],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,2,0],"matrix_rows":[146,145,4,8,131,32,64,19,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,2,0]],["P",[146,145,4,8,131,32,64,19,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,2,0],"matrix_rows":[146,145,4,8,131,32,64,19,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,2,0]],["P",[146,145,4,8,131,32,64,19,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,2,0],"matrix_rows":[146,145,4,8,129,32,64,17,256],"offset":144,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,0]],["P",[146,145,4,8,129,32,64,17,256]],["X",144],["phase",2]]}},"orthogonal_transvections":[147],"port":36,"q":146}, + {"G_rows":[274,273,4,8,259,32,64,128,19],"K_word":[["P",[274,273,4,8,259,32,64,128,19]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,0,2]]],"Z_mask":275,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,1,0,0,0,2],"matrix_rows":[274,259,4,8,273,32,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,1,0,0,1,0,0,0,2]],["P",[274,259,4,8,273,32,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[274,273,4,8,259,32,64,128,19],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,0,2]],["P",[274,273,4,8,259,32,64,128,19]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[274,273,4,8,259,32,64,128,19],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,0,2]],["P",[274,273,4,8,259,32,64,128,19]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,0,2],"matrix_rows":[274,273,4,8,257,32,64,128,17],"offset":238,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,0,2]],["P",[274,273,4,8,257,32,64,128,17]],["X",238],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,3,0,0,0,2],"matrix_rows":[274,259,4,8,273,32,64,128,1],"offset":274,"phase":3,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"word":[["D",[0,18,0,0,18,0,0,0,0],[2,3,0,0,3,0,0,0,2]],["P",[274,259,4,8,273,32,64,128,1]],["X",274],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[274,273,4,8,259,32,64,128,19],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,0,2]],["P",[274,273,4,8,259,32,64,128,19]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[274,273,4,8,259,32,64,128,19],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,2,0,0,0,2]],["P",[274,273,4,8,259,32,64,128,19]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,0,2],"matrix_rows":[274,273,4,8,257,32,64,128,17],"offset":272,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,0,2]],["P",[274,273,4,8,257,32,64,128,17]],["X",272],["phase",2]]}},"orthogonal_transvections":[275],"port":37,"q":274}, + {"G_rows":[98,97,4,8,16,67,35,128,256],"K_word":[["P",[98,97,4,8,16,67,35,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,2,0,0]]],"Z_mask":99,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,1,2,0,0],"matrix_rows":[98,67,4,8,16,97,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"word":[["D",[0,34,0,0,0,34,0,0,0],[2,1,0,0,0,1,2,0,0]],["P",[98,67,4,8,16,97,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,2,2,0,0],"matrix_rows":[98,97,4,8,16,67,35,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,2,0,0]],["P",[98,97,4,8,16,67,35,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,2,2,0,0],"matrix_rows":[98,97,4,8,16,67,35,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,2,0,0]],["P",[98,97,4,8,16,67,35,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,0],"matrix_rows":[98,97,4,8,16,65,33,128,256],"offset":414,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,0]],["P",[98,97,4,8,16,65,33,128,256]],["X",414],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,3,2,0,0],"matrix_rows":[98,67,4,8,16,97,1,128,256],"offset":98,"phase":3,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"word":[["D",[0,34,0,0,0,34,0,0,0],[2,3,0,0,0,3,2,0,0]],["P",[98,67,4,8,16,97,1,128,256]],["X",98],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,2,2,0,0],"matrix_rows":[98,97,4,8,16,67,35,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,2,0,0]],["P",[98,97,4,8,16,67,35,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,2,2,0,0],"matrix_rows":[98,97,4,8,16,67,35,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,2,0,0]],["P",[98,97,4,8,16,67,35,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,0],"matrix_rows":[98,97,4,8,16,65,33,128,256],"offset":96,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,0]],["P",[98,97,4,8,16,65,33,128,256]],["X",96],["phase",2]]}},"orthogonal_transvections":[99],"port":38,"q":98}, + {"G_rows":[162,161,4,8,16,131,64,35,256],"K_word":[["P",[162,161,4,8,16,131,64,35,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,2,0]]],"Z_mask":163,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,1,0,2,0],"matrix_rows":[162,131,4,8,16,161,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"word":[["D",[0,34,0,0,0,34,0,0,0],[2,1,0,0,0,1,0,2,0]],["P",[162,131,4,8,16,161,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,2,0],"matrix_rows":[162,161,4,8,16,131,64,35,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,2,0]],["P",[162,161,4,8,16,131,64,35,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,2,0],"matrix_rows":[162,161,4,8,16,131,64,35,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,2,0]],["P",[162,161,4,8,16,131,64,35,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[162,161,4,8,16,129,64,33,256],"offset":350,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,0]],["P",[162,161,4,8,16,129,64,33,256]],["X",350],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,3,0,2,0],"matrix_rows":[162,131,4,8,16,161,64,1,256],"offset":162,"phase":3,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"word":[["D",[0,34,0,0,0,34,0,0,0],[2,3,0,0,0,3,0,2,0]],["P",[162,131,4,8,16,161,64,1,256]],["X",162],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,2,0],"matrix_rows":[162,161,4,8,16,131,64,35,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,2,0]],["P",[162,161,4,8,16,131,64,35,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,2,0],"matrix_rows":[162,161,4,8,16,131,64,35,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,2,0]],["P",[162,161,4,8,16,131,64,35,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[162,161,4,8,16,129,64,33,256],"offset":160,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,0]],["P",[162,161,4,8,16,129,64,33,256]],["X",160],["phase",2]]}},"orthogonal_transvections":[163],"port":39,"q":162}, + {"G_rows":[290,289,4,8,16,259,64,128,35],"K_word":[["P",[290,289,4,8,16,259,64,128,35]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,0,2]]],"Z_mask":291,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,1,0,0,2],"matrix_rows":[290,259,4,8,16,289,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"word":[["D",[0,34,0,0,0,34,0,0,0],[2,1,0,0,0,1,0,0,2]],["P",[290,259,4,8,16,289,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,0,2],"matrix_rows":[290,289,4,8,16,259,64,128,35],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,0,2]],["P",[290,289,4,8,16,259,64,128,35]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,0,2],"matrix_rows":[290,289,4,8,16,259,64,128,35],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,0,2]],["P",[290,289,4,8,16,259,64,128,35]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[290,289,4,8,16,257,64,128,33],"offset":222,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,0,2]],["P",[290,289,4,8,16,257,64,128,33]],["X",222],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,3,0,0,2],"matrix_rows":[290,259,4,8,16,289,64,128,1],"offset":290,"phase":3,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"word":[["D",[0,34,0,0,0,34,0,0,0],[2,3,0,0,0,3,0,0,2]],["P",[290,259,4,8,16,289,64,128,1]],["X",290],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,0,2],"matrix_rows":[290,289,4,8,16,259,64,128,35],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,0,2]],["P",[290,289,4,8,16,259,64,128,35]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,2,0,0,2],"matrix_rows":[290,289,4,8,16,259,64,128,35],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,2,0,0,2]],["P",[290,289,4,8,16,259,64,128,35]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[290,289,4,8,16,257,64,128,33],"offset":288,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,0,2]],["P",[290,289,4,8,16,257,64,128,33]],["X",288],["phase",2]]}},"orthogonal_transvections":[291],"port":40,"q":290}, + {"G_rows":[194,193,4,8,16,32,131,67,256],"K_word":[["P",[194,193,4,8,16,32,131,67,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,2,0]]],"Z_mask":195,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,0,1,2,0],"matrix_rows":[194,131,4,8,16,32,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"word":[["D",[0,66,0,0,0,0,66,0,0],[2,1,0,0,0,0,1,2,0]],["P",[194,131,4,8,16,32,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,2,0],"matrix_rows":[194,193,4,8,16,32,131,67,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,2,0]],["P",[194,193,4,8,16,32,131,67,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,2,0],"matrix_rows":[194,193,4,8,16,32,131,67,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,2,0]],["P",[194,193,4,8,16,32,131,67,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,0],"matrix_rows":[194,193,4,8,16,32,129,65,256],"offset":318,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,0]],["P",[194,193,4,8,16,32,129,65,256]],["X",318],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,0,3,2,0],"matrix_rows":[194,131,4,8,16,32,193,1,256],"offset":194,"phase":3,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"word":[["D",[0,66,0,0,0,0,66,0,0],[2,3,0,0,0,0,3,2,0]],["P",[194,131,4,8,16,32,193,1,256]],["X",194],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,2,0],"matrix_rows":[194,193,4,8,16,32,131,67,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,2,0]],["P",[194,193,4,8,16,32,131,67,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,2,0],"matrix_rows":[194,193,4,8,16,32,131,67,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,2,0]],["P",[194,193,4,8,16,32,131,67,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,0],"matrix_rows":[194,193,4,8,16,32,129,65,256],"offset":192,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,0]],["P",[194,193,4,8,16,32,129,65,256]],["X",192],["phase",2]]}},"orthogonal_transvections":[195],"port":41,"q":194}, + {"G_rows":[322,321,4,8,16,32,259,128,67],"K_word":[["P",[322,321,4,8,16,32,259,128,67]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,0,2]]],"Z_mask":323,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,0,1,0,2],"matrix_rows":[322,259,4,8,16,32,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"word":[["D",[0,66,0,0,0,0,66,0,0],[2,1,0,0,0,0,1,0,2]],["P",[322,259,4,8,16,32,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[322,321,4,8,16,32,259,128,67],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,0,2]],["P",[322,321,4,8,16,32,259,128,67]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[322,321,4,8,16,32,259,128,67],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,0,2]],["P",[322,321,4,8,16,32,259,128,67]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[322,321,4,8,16,32,257,128,65],"offset":190,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,0,2]],["P",[322,321,4,8,16,32,257,128,65]],["X",190],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,0,3,0,2],"matrix_rows":[322,259,4,8,16,32,321,128,1],"offset":322,"phase":3,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"word":[["D",[0,66,0,0,0,0,66,0,0],[2,3,0,0,0,0,3,0,2]],["P",[322,259,4,8,16,32,321,128,1]],["X",322],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[322,321,4,8,16,32,259,128,67],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,0,2]],["P",[322,321,4,8,16,32,259,128,67]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[322,321,4,8,16,32,259,128,67],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,2,0,2]],["P",[322,321,4,8,16,32,259,128,67]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[322,321,4,8,16,32,257,128,65],"offset":320,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,0,2]],["P",[322,321,4,8,16,32,257,128,65]],["X",320],["phase",2]]}},"orthogonal_transvections":[323],"port":42,"q":322}, + {"G_rows":[386,385,4,8,16,32,64,259,131],"K_word":[["P",[386,385,4,8,16,32,64,259,131]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,0,2,2]]],"Z_mask":387,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,0,0,0,0,1,2],"matrix_rows":[386,259,4,8,16,32,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,130,0,0,0,0,0,130,0]},"word":[["D",[0,130,0,0,0,0,0,130,0],[2,1,0,0,0,0,0,1,2]],["P",[386,259,4,8,16,32,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,0,2,2],"matrix_rows":[386,385,4,8,16,32,64,259,131],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,0,2,2]],["P",[386,385,4,8,16,32,64,259,131]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,0,2,2],"matrix_rows":[386,385,4,8,16,32,64,259,131],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,0,2,2]],["P",[386,385,4,8,16,32,64,259,131]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[386,385,4,8,16,32,64,257,129],"offset":126,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[386,385,4,8,16,32,64,257,129]],["X",126],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,0,0,0,0,3,2],"matrix_rows":[386,259,4,8,16,32,64,385,1],"offset":386,"phase":3,"quadratic_rows":[0,130,0,0,0,0,0,130,0]},"word":[["D",[0,130,0,0,0,0,0,130,0],[2,3,0,0,0,0,0,3,2]],["P",[386,259,4,8,16,32,64,385,1]],["X",386],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,0,0,0,0,2,2],"matrix_rows":[386,385,4,8,16,32,64,259,131],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,0,2,2]],["P",[386,385,4,8,16,32,64,259,131]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,0,0,0,0,2,2],"matrix_rows":[386,385,4,8,16,32,64,259,131],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,0,0,0,0,2,2]],["P",[386,385,4,8,16,32,64,259,131]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[386,385,4,8,16,32,64,257,129],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[386,385,4,8,16,32,64,257,129]],["X",384],["phase",2]]}},"orthogonal_transvections":[387],"port":43,"q":386}, + {"G_rows":[28,2,25,21,13,32,64,128,256],"K_word":[["P",[28,2,25,21,13,32,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,0,0,0,0]]],"Z_mask":29,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,1,2,0,0,0,0],"matrix_rows":[28,2,21,25,1,32,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"word":[["D",[0,0,12,12,0,0,0,0,0],[2,0,1,1,2,0,0,0,0]],["P",[28,2,21,25,1,32,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,0,0,0,0],"matrix_rows":[28,2,25,21,13,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,0,0,0,0]],["P",[28,2,25,21,13,32,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,2,2,0,0,0,0],"matrix_rows":[28,2,25,21,13,32,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,0,0,0,0]],["P",[28,2,25,21,13,32,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,0,0],"matrix_rows":[28,2,25,17,9,32,64,128,256],"offset":486,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,0,0]],["P",[28,2,25,17,9,32,64,128,256]],["X",486],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,3,2,0,0,0,0],"matrix_rows":[28,2,21,25,1,32,64,128,256],"offset":28,"phase":3,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"word":[["D",[0,0,12,12,0,0,0,0,0],[2,0,3,3,2,0,0,0,0]],["P",[28,2,21,25,1,32,64,128,256]],["X",28],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,0,0,0,0],"matrix_rows":[28,2,25,21,13,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,0,0,0,0]],["P",[28,2,25,21,13,32,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,2,2,0,0,0,0],"matrix_rows":[28,2,25,21,13,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,0,0,0,0]],["P",[28,2,25,21,13,32,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,0,0],"matrix_rows":[28,2,25,17,9,32,64,128,256],"offset":24,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,0,0]],["P",[28,2,25,17,9,32,64,128,256]],["X",24],["phase",2]]}},"orthogonal_transvections":[29],"port":44,"q":28}, + {"G_rows":[44,2,41,37,16,13,64,128,256],"K_word":[["P",[44,2,41,37,16,13,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,2,0,0,0]]],"Z_mask":45,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,1,0,2,0,0,0],"matrix_rows":[44,2,37,41,16,1,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"word":[["D",[0,0,12,12,0,0,0,0,0],[2,0,1,1,0,2,0,0,0]],["P",[44,2,37,41,16,1,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,2,0,2,0,0,0],"matrix_rows":[44,2,41,37,16,13,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,2,0,0,0]],["P",[44,2,41,37,16,13,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,2,0,2,0,0,0],"matrix_rows":[44,2,41,37,16,13,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,2,0,0,0]],["P",[44,2,41,37,16,13,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,2,0,0,0],"matrix_rows":[44,2,41,33,16,9,64,128,256],"offset":470,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,0,0]],["P",[44,2,41,33,16,9,64,128,256]],["X",470],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,3,0,2,0,0,0],"matrix_rows":[44,2,37,41,16,1,64,128,256],"offset":44,"phase":3,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"word":[["D",[0,0,12,12,0,0,0,0,0],[2,0,3,3,0,2,0,0,0]],["P",[44,2,37,41,16,1,64,128,256]],["X",44],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,2,0,2,0,0,0],"matrix_rows":[44,2,41,37,16,13,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,2,0,0,0]],["P",[44,2,41,37,16,13,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,2,0,2,0,0,0],"matrix_rows":[44,2,41,37,16,13,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,2,0,0,0]],["P",[44,2,41,37,16,13,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,2,0,0,0],"matrix_rows":[44,2,41,33,16,9,64,128,256],"offset":40,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,0,0]],["P",[44,2,41,33,16,9,64,128,256]],["X",40],["phase",2]]}},"orthogonal_transvections":[45],"port":45,"q":44}, + {"G_rows":[140,2,137,133,16,32,64,13,256],"K_word":[["P",[140,2,137,133,16,32,64,13,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,2,0]]],"Z_mask":141,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,1,0,0,0,2,0],"matrix_rows":[140,2,133,137,16,32,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"word":[["D",[0,0,12,12,0,0,0,0,0],[2,0,1,1,0,0,0,2,0]],["P",[140,2,133,137,16,32,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,2,0,0,0,2,0],"matrix_rows":[140,2,137,133,16,32,64,13,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,2,0]],["P",[140,2,137,133,16,32,64,13,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,2,0,0,0,2,0],"matrix_rows":[140,2,137,133,16,32,64,13,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,2,0]],["P",[140,2,137,133,16,32,64,13,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,2,0],"matrix_rows":[140,2,137,129,16,32,64,9,256],"offset":374,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,2,0]],["P",[140,2,137,129,16,32,64,9,256]],["X",374],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,3,0,0,0,2,0],"matrix_rows":[140,2,133,137,16,32,64,1,256],"offset":140,"phase":3,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"word":[["D",[0,0,12,12,0,0,0,0,0],[2,0,3,3,0,0,0,2,0]],["P",[140,2,133,137,16,32,64,1,256]],["X",140],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,2,0,0,0,2,0],"matrix_rows":[140,2,137,133,16,32,64,13,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,2,0]],["P",[140,2,137,133,16,32,64,13,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,2,0,0,0,2,0],"matrix_rows":[140,2,137,133,16,32,64,13,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,2,0]],["P",[140,2,137,133,16,32,64,13,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,2,0],"matrix_rows":[140,2,137,129,16,32,64,9,256],"offset":136,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,2,0]],["P",[140,2,137,129,16,32,64,9,256]],["X",136],["phase",2]]}},"orthogonal_transvections":[141],"port":46,"q":140}, + {"G_rows":[268,2,265,261,16,32,64,128,13],"K_word":[["P",[268,2,265,261,16,32,64,128,13]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,0,2]]],"Z_mask":269,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,1,0,0,0,0,2],"matrix_rows":[268,2,261,265,16,32,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"word":[["D",[0,0,12,12,0,0,0,0,0],[2,0,1,1,0,0,0,0,2]],["P",[268,2,261,265,16,32,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,2,0,0,0,0,2],"matrix_rows":[268,2,265,261,16,32,64,128,13],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,0,2]],["P",[268,2,265,261,16,32,64,128,13]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,2,0,0,0,0,2],"matrix_rows":[268,2,265,261,16,32,64,128,13],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,0,2]],["P",[268,2,265,261,16,32,64,128,13]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,0,2],"matrix_rows":[268,2,265,257,16,32,64,128,9],"offset":246,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,0,2]],["P",[268,2,265,257,16,32,64,128,9]],["X",246],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,3,0,0,0,0,2],"matrix_rows":[268,2,261,265,16,32,64,128,1],"offset":268,"phase":3,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"word":[["D",[0,0,12,12,0,0,0,0,0],[2,0,3,3,0,0,0,0,2]],["P",[268,2,261,265,16,32,64,128,1]],["X",268],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,2,0,0,0,0,2],"matrix_rows":[268,2,265,261,16,32,64,128,13],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,0,2]],["P",[268,2,265,261,16,32,64,128,13]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,2,0,0,0,0,2],"matrix_rows":[268,2,265,261,16,32,64,128,13],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,0,0,0,2]],["P",[268,2,265,261,16,32,64,128,13]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,0,2],"matrix_rows":[268,2,265,257,16,32,64,128,9],"offset":264,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,0,2]],["P",[268,2,265,257,16,32,64,128,9]],["X",264],["phase",2]]}},"orthogonal_transvections":[269],"port":47,"q":268}, + {"G_rows":[84,2,81,8,69,32,21,128,256],"K_word":[["P",[84,2,81,8,69,32,21,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,2,0,0]]],"Z_mask":85,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,0,1,0,2,0,0],"matrix_rows":[84,2,69,8,81,32,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"word":[["D",[0,0,20,0,20,0,0,0,0],[2,0,1,0,1,0,2,0,0]],["P",[84,2,69,8,81,32,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,0,2,0,2,0,0],"matrix_rows":[84,2,81,8,69,32,21,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,2,0,0]],["P",[84,2,81,8,69,32,21,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,0,2,0,2,0,0],"matrix_rows":[84,2,81,8,69,32,21,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,2,0,0]],["P",[84,2,81,8,69,32,21,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,0,0],"matrix_rows":[84,2,81,8,65,32,17,128,256],"offset":430,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,0,0]],["P",[84,2,81,8,65,32,17,128,256]],["X",430],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,0,3,0,2,0,0],"matrix_rows":[84,2,69,8,81,32,1,128,256],"offset":84,"phase":3,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"word":[["D",[0,0,20,0,20,0,0,0,0],[2,0,3,0,3,0,2,0,0]],["P",[84,2,69,8,81,32,1,128,256]],["X",84],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,0,2,0,2,0,0],"matrix_rows":[84,2,81,8,69,32,21,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,2,0,0]],["P",[84,2,81,8,69,32,21,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,0,2,0,2,0,0],"matrix_rows":[84,2,81,8,69,32,21,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,2,0,0]],["P",[84,2,81,8,69,32,21,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,0,0],"matrix_rows":[84,2,81,8,65,32,17,128,256],"offset":80,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,0,0]],["P",[84,2,81,8,65,32,17,128,256]],["X",80],["phase",2]]}},"orthogonal_transvections":[85],"port":48,"q":84}, + {"G_rows":[148,2,145,8,133,32,64,21,256],"K_word":[["P",[148,2,145,8,133,32,64,21,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,2,0]]],"Z_mask":149,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,0,1,0,0,2,0],"matrix_rows":[148,2,133,8,145,32,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"word":[["D",[0,0,20,0,20,0,0,0,0],[2,0,1,0,1,0,0,2,0]],["P",[148,2,133,8,145,32,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,0,2,0,0,2,0],"matrix_rows":[148,2,145,8,133,32,64,21,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,2,0]],["P",[148,2,145,8,133,32,64,21,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,0,2,0,0,2,0],"matrix_rows":[148,2,145,8,133,32,64,21,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,2,0]],["P",[148,2,145,8,133,32,64,21,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,2,0],"matrix_rows":[148,2,145,8,129,32,64,17,256],"offset":366,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,0]],["P",[148,2,145,8,129,32,64,17,256]],["X",366],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,0,3,0,0,2,0],"matrix_rows":[148,2,133,8,145,32,64,1,256],"offset":148,"phase":3,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"word":[["D",[0,0,20,0,20,0,0,0,0],[2,0,3,0,3,0,0,2,0]],["P",[148,2,133,8,145,32,64,1,256]],["X",148],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,0,2,0,0,2,0],"matrix_rows":[148,2,145,8,133,32,64,21,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,2,0]],["P",[148,2,145,8,133,32,64,21,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,0,2,0,0,2,0],"matrix_rows":[148,2,145,8,133,32,64,21,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,2,0]],["P",[148,2,145,8,133,32,64,21,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,2,0],"matrix_rows":[148,2,145,8,129,32,64,17,256],"offset":144,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,0]],["P",[148,2,145,8,129,32,64,17,256]],["X",144],["phase",2]]}},"orthogonal_transvections":[149],"port":49,"q":148}, + {"G_rows":[276,2,273,8,261,32,64,128,21],"K_word":[["P",[276,2,273,8,261,32,64,128,21]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,0,2]]],"Z_mask":277,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,0,1,0,0,0,2],"matrix_rows":[276,2,261,8,273,32,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"word":[["D",[0,0,20,0,20,0,0,0,0],[2,0,1,0,1,0,0,0,2]],["P",[276,2,261,8,273,32,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,0,2,0,0,0,2],"matrix_rows":[276,2,273,8,261,32,64,128,21],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,0,2]],["P",[276,2,273,8,261,32,64,128,21]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,0,2,0,0,0,2],"matrix_rows":[276,2,273,8,261,32,64,128,21],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,0,2]],["P",[276,2,273,8,261,32,64,128,21]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,0,2],"matrix_rows":[276,2,273,8,257,32,64,128,17],"offset":238,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,0,2]],["P",[276,2,273,8,257,32,64,128,17]],["X",238],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,0,3,0,0,0,2],"matrix_rows":[276,2,261,8,273,32,64,128,1],"offset":276,"phase":3,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"word":[["D",[0,0,20,0,20,0,0,0,0],[2,0,3,0,3,0,0,0,2]],["P",[276,2,261,8,273,32,64,128,1]],["X",276],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,0,2,0,0,0,2],"matrix_rows":[276,2,273,8,261,32,64,128,21],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,0,2]],["P",[276,2,273,8,261,32,64,128,21]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,0,2,0,0,0,2],"matrix_rows":[276,2,273,8,261,32,64,128,21],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,0,0,0,2]],["P",[276,2,273,8,261,32,64,128,21]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,0,2],"matrix_rows":[276,2,273,8,257,32,64,128,17],"offset":272,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,0,2]],["P",[276,2,273,8,257,32,64,128,17]],["X",272],["phase",2]]}},"orthogonal_transvections":[277],"port":50,"q":276}, + {"G_rows":[100,2,97,8,16,69,37,128,256],"K_word":[["P",[100,2,97,8,16,69,37,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,2,0,0]]],"Z_mask":101,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,0,0,1,2,0,0],"matrix_rows":[100,2,69,8,16,97,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"word":[["D",[0,0,36,0,0,36,0,0,0],[2,0,1,0,0,1,2,0,0]],["P",[100,2,69,8,16,97,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,2,2,0,0],"matrix_rows":[100,2,97,8,16,69,37,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,2,0,0]],["P",[100,2,97,8,16,69,37,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,2,2,0,0],"matrix_rows":[100,2,97,8,16,69,37,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,2,0,0]],["P",[100,2,97,8,16,69,37,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,0],"matrix_rows":[100,2,97,8,16,65,33,128,256],"offset":414,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,0]],["P",[100,2,97,8,16,65,33,128,256]],["X",414],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,0,0,3,2,0,0],"matrix_rows":[100,2,69,8,16,97,1,128,256],"offset":100,"phase":3,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"word":[["D",[0,0,36,0,0,36,0,0,0],[2,0,3,0,0,3,2,0,0]],["P",[100,2,69,8,16,97,1,128,256]],["X",100],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,2,2,0,0],"matrix_rows":[100,2,97,8,16,69,37,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,2,0,0]],["P",[100,2,97,8,16,69,37,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,2,2,0,0],"matrix_rows":[100,2,97,8,16,69,37,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,2,0,0]],["P",[100,2,97,8,16,69,37,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,0],"matrix_rows":[100,2,97,8,16,65,33,128,256],"offset":96,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,0]],["P",[100,2,97,8,16,65,33,128,256]],["X",96],["phase",2]]}},"orthogonal_transvections":[101],"port":51,"q":100}, + {"G_rows":[164,2,161,8,16,133,64,37,256],"K_word":[["P",[164,2,161,8,16,133,64,37,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,2,0]]],"Z_mask":165,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,0,0,1,0,2,0],"matrix_rows":[164,2,133,8,16,161,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"word":[["D",[0,0,36,0,0,36,0,0,0],[2,0,1,0,0,1,0,2,0]],["P",[164,2,133,8,16,161,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,2,0,2,0],"matrix_rows":[164,2,161,8,16,133,64,37,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,2,0]],["P",[164,2,161,8,16,133,64,37,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,2,0,2,0],"matrix_rows":[164,2,161,8,16,133,64,37,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,2,0]],["P",[164,2,161,8,16,133,64,37,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[164,2,161,8,16,129,64,33,256],"offset":350,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,0]],["P",[164,2,161,8,16,129,64,33,256]],["X",350],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,0,0,3,0,2,0],"matrix_rows":[164,2,133,8,16,161,64,1,256],"offset":164,"phase":3,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"word":[["D",[0,0,36,0,0,36,0,0,0],[2,0,3,0,0,3,0,2,0]],["P",[164,2,133,8,16,161,64,1,256]],["X",164],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,2,0,2,0],"matrix_rows":[164,2,161,8,16,133,64,37,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,2,0]],["P",[164,2,161,8,16,133,64,37,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,2,0,2,0],"matrix_rows":[164,2,161,8,16,133,64,37,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,2,0]],["P",[164,2,161,8,16,133,64,37,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[164,2,161,8,16,129,64,33,256],"offset":160,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,0]],["P",[164,2,161,8,16,129,64,33,256]],["X",160],["phase",2]]}},"orthogonal_transvections":[165],"port":52,"q":164}, + {"G_rows":[292,2,289,8,16,261,64,128,37],"K_word":[["P",[292,2,289,8,16,261,64,128,37]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,0,2]]],"Z_mask":293,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,0,0,1,0,0,2],"matrix_rows":[292,2,261,8,16,289,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"word":[["D",[0,0,36,0,0,36,0,0,0],[2,0,1,0,0,1,0,0,2]],["P",[292,2,261,8,16,289,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,2,0,0,2],"matrix_rows":[292,2,289,8,16,261,64,128,37],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,0,2]],["P",[292,2,289,8,16,261,64,128,37]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,2,0,0,2],"matrix_rows":[292,2,289,8,16,261,64,128,37],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,0,2]],["P",[292,2,289,8,16,261,64,128,37]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[292,2,289,8,16,257,64,128,33],"offset":222,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,0,2]],["P",[292,2,289,8,16,257,64,128,33]],["X",222],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,0,0,3,0,0,2],"matrix_rows":[292,2,261,8,16,289,64,128,1],"offset":292,"phase":3,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"word":[["D",[0,0,36,0,0,36,0,0,0],[2,0,3,0,0,3,0,0,2]],["P",[292,2,261,8,16,289,64,128,1]],["X",292],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,2,0,0,2],"matrix_rows":[292,2,289,8,16,261,64,128,37],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,0,2]],["P",[292,2,289,8,16,261,64,128,37]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,2,0,0,2],"matrix_rows":[292,2,289,8,16,261,64,128,37],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,2,0,0,2]],["P",[292,2,289,8,16,261,64,128,37]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[292,2,289,8,16,257,64,128,33],"offset":288,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,0,2]],["P",[292,2,289,8,16,257,64,128,33]],["X",288],["phase",2]]}},"orthogonal_transvections":[293],"port":53,"q":292}, + {"G_rows":[196,2,193,8,16,32,133,69,256],"K_word":[["P",[196,2,193,8,16,32,133,69,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,2,0]]],"Z_mask":197,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,0,0,0,1,2,0],"matrix_rows":[196,2,133,8,16,32,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,0,68,0,0,0,68,0,0]},"word":[["D",[0,0,68,0,0,0,68,0,0],[2,0,1,0,0,0,1,2,0]],["P",[196,2,133,8,16,32,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,2,2,0],"matrix_rows":[196,2,193,8,16,32,133,69,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,2,0]],["P",[196,2,193,8,16,32,133,69,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,0,2,2,0],"matrix_rows":[196,2,193,8,16,32,133,69,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,2,0]],["P",[196,2,193,8,16,32,133,69,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,0],"matrix_rows":[196,2,193,8,16,32,129,65,256],"offset":318,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,0]],["P",[196,2,193,8,16,32,129,65,256]],["X",318],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,0,0,0,3,2,0],"matrix_rows":[196,2,133,8,16,32,193,1,256],"offset":196,"phase":3,"quadratic_rows":[0,0,68,0,0,0,68,0,0]},"word":[["D",[0,0,68,0,0,0,68,0,0],[2,0,3,0,0,0,3,2,0]],["P",[196,2,133,8,16,32,193,1,256]],["X",196],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,2,2,0],"matrix_rows":[196,2,193,8,16,32,133,69,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,2,0]],["P",[196,2,193,8,16,32,133,69,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,0,2,2,0],"matrix_rows":[196,2,193,8,16,32,133,69,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,2,0]],["P",[196,2,193,8,16,32,133,69,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,0],"matrix_rows":[196,2,193,8,16,32,129,65,256],"offset":192,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,0]],["P",[196,2,193,8,16,32,129,65,256]],["X",192],["phase",2]]}},"orthogonal_transvections":[197],"port":54,"q":196}, + {"G_rows":[324,2,321,8,16,32,261,128,69],"K_word":[["P",[324,2,321,8,16,32,261,128,69]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,0,2]]],"Z_mask":325,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,0,0,0,1,0,2],"matrix_rows":[324,2,261,8,16,32,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,0,68,0,0,0,68,0,0]},"word":[["D",[0,0,68,0,0,0,68,0,0],[2,0,1,0,0,0,1,0,2]],["P",[324,2,261,8,16,32,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,2,0,2],"matrix_rows":[324,2,321,8,16,32,261,128,69],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,0,2]],["P",[324,2,321,8,16,32,261,128,69]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,0,2,0,2],"matrix_rows":[324,2,321,8,16,32,261,128,69],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,0,2]],["P",[324,2,321,8,16,32,261,128,69]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[324,2,321,8,16,32,257,128,65],"offset":190,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,0,2]],["P",[324,2,321,8,16,32,257,128,65]],["X",190],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,0,0,0,3,0,2],"matrix_rows":[324,2,261,8,16,32,321,128,1],"offset":324,"phase":3,"quadratic_rows":[0,0,68,0,0,0,68,0,0]},"word":[["D",[0,0,68,0,0,0,68,0,0],[2,0,3,0,0,0,3,0,2]],["P",[324,2,261,8,16,32,321,128,1]],["X",324],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,2,0,2],"matrix_rows":[324,2,321,8,16,32,261,128,69],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,0,2]],["P",[324,2,321,8,16,32,261,128,69]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,0,2,0,2],"matrix_rows":[324,2,321,8,16,32,261,128,69],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,2,0,2]],["P",[324,2,321,8,16,32,261,128,69]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[324,2,321,8,16,32,257,128,65],"offset":320,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,0,2]],["P",[324,2,321,8,16,32,257,128,65]],["X",320],["phase",2]]}},"orthogonal_transvections":[325],"port":55,"q":324}, + {"G_rows":[388,2,385,8,16,32,64,261,133],"K_word":[["P",[388,2,385,8,16,32,64,261,133]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,0,2,2]]],"Z_mask":389,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,0,0,0,0,1,2],"matrix_rows":[388,2,261,8,16,32,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,0,132,0,0,0,0,132,0]},"word":[["D",[0,0,132,0,0,0,0,132,0],[2,0,1,0,0,0,0,1,2]],["P",[388,2,261,8,16,32,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,0,2,2],"matrix_rows":[388,2,385,8,16,32,64,261,133],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,0,2,2]],["P",[388,2,385,8,16,32,64,261,133]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,0,0,2,2],"matrix_rows":[388,2,385,8,16,32,64,261,133],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,0,2,2]],["P",[388,2,385,8,16,32,64,261,133]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[388,2,385,8,16,32,64,257,129],"offset":126,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[388,2,385,8,16,32,64,257,129]],["X",126],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,0,0,0,0,3,2],"matrix_rows":[388,2,261,8,16,32,64,385,1],"offset":388,"phase":3,"quadratic_rows":[0,0,132,0,0,0,0,132,0]},"word":[["D",[0,0,132,0,0,0,0,132,0],[2,0,3,0,0,0,0,3,2]],["P",[388,2,261,8,16,32,64,385,1]],["X",388],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,0,0,0,0,2,2],"matrix_rows":[388,2,385,8,16,32,64,261,133],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,0,2,2]],["P",[388,2,385,8,16,32,64,261,133]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,0,0,0,0,2,2],"matrix_rows":[388,2,385,8,16,32,64,261,133],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,0,0,0,2,2]],["P",[388,2,385,8,16,32,64,261,133]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[388,2,385,8,16,32,64,257,129],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[388,2,385,8,16,32,64,257,129]],["X",384],["phase",2]]}},"orthogonal_transvections":[389],"port":56,"q":388}, + {"G_rows":[56,2,4,49,41,25,64,128,256],"K_word":[["P",[56,2,4,49,41,25,64,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,2,0,0,0]]],"Z_mask":57,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,1,1,2,0,0,0],"matrix_rows":[56,2,4,41,49,1,64,128,256],"offset":0,"phase":3,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"word":[["D",[0,0,0,24,24,0,0,0,0],[2,0,0,1,1,2,0,0,0]],["P",[56,2,4,41,49,1,64,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,2,0,0,0],"matrix_rows":[56,2,4,49,41,25,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,2,0,0,0]],["P",[56,2,4,49,41,25,64,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,2,2,2,0,0,0],"matrix_rows":[56,2,4,49,41,25,64,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,2,0,0,0]],["P",[56,2,4,49,41,25,64,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,0,0],"matrix_rows":[56,2,4,49,33,17,64,128,256],"offset":462,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,0,0]],["P",[56,2,4,49,33,17,64,128,256]],["X",462],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,3,3,2,0,0,0],"matrix_rows":[56,2,4,41,49,1,64,128,256],"offset":56,"phase":3,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"word":[["D",[0,0,0,24,24,0,0,0,0],[2,0,0,3,3,2,0,0,0]],["P",[56,2,4,41,49,1,64,128,256]],["X",56],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,2,0,0,0],"matrix_rows":[56,2,4,49,41,25,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,2,0,0,0]],["P",[56,2,4,49,41,25,64,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,2,2,2,0,0,0],"matrix_rows":[56,2,4,49,41,25,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,2,0,0,0]],["P",[56,2,4,49,41,25,64,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,0,0],"matrix_rows":[56,2,4,49,33,17,64,128,256],"offset":48,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,0,0]],["P",[56,2,4,49,33,17,64,128,256]],["X",48],["phase",2]]}},"orthogonal_transvections":[57],"port":57,"q":56}, + {"G_rows":[88,2,4,81,73,32,25,128,256],"K_word":[["P",[88,2,4,81,73,32,25,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,2,0,0]]],"Z_mask":89,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,1,1,0,2,0,0],"matrix_rows":[88,2,4,73,81,32,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"word":[["D",[0,0,0,24,24,0,0,0,0],[2,0,0,1,1,0,2,0,0]],["P",[88,2,4,73,81,32,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,0,2,0,0],"matrix_rows":[88,2,4,81,73,32,25,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,2,0,0]],["P",[88,2,4,81,73,32,25,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,2,2,0,2,0,0],"matrix_rows":[88,2,4,81,73,32,25,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,2,0,0]],["P",[88,2,4,81,73,32,25,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,0,0],"matrix_rows":[88,2,4,81,65,32,17,128,256],"offset":430,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,0,0]],["P",[88,2,4,81,65,32,17,128,256]],["X",430],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,3,3,0,2,0,0],"matrix_rows":[88,2,4,73,81,32,1,128,256],"offset":88,"phase":3,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"word":[["D",[0,0,0,24,24,0,0,0,0],[2,0,0,3,3,0,2,0,0]],["P",[88,2,4,73,81,32,1,128,256]],["X",88],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,0,2,0,0],"matrix_rows":[88,2,4,81,73,32,25,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,2,0,0]],["P",[88,2,4,81,73,32,25,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,2,2,0,2,0,0],"matrix_rows":[88,2,4,81,73,32,25,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,2,0,0]],["P",[88,2,4,81,73,32,25,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,0,0],"matrix_rows":[88,2,4,81,65,32,17,128,256],"offset":80,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,0,0]],["P",[88,2,4,81,65,32,17,128,256]],["X",80],["phase",2]]}},"orthogonal_transvections":[89],"port":58,"q":88}, + {"G_rows":[152,2,4,145,137,32,64,25,256],"K_word":[["P",[152,2,4,145,137,32,64,25,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,2,0]]],"Z_mask":153,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,1,1,0,0,2,0],"matrix_rows":[152,2,4,137,145,32,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"word":[["D",[0,0,0,24,24,0,0,0,0],[2,0,0,1,1,0,0,2,0]],["P",[152,2,4,137,145,32,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,2,0],"matrix_rows":[152,2,4,145,137,32,64,25,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,2,0]],["P",[152,2,4,145,137,32,64,25,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,2,0],"matrix_rows":[152,2,4,145,137,32,64,25,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,2,0]],["P",[152,2,4,145,137,32,64,25,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,2,0],"matrix_rows":[152,2,4,145,129,32,64,17,256],"offset":366,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,0]],["P",[152,2,4,145,129,32,64,17,256]],["X",366],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,3,3,0,0,2,0],"matrix_rows":[152,2,4,137,145,32,64,1,256],"offset":152,"phase":3,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"word":[["D",[0,0,0,24,24,0,0,0,0],[2,0,0,3,3,0,0,2,0]],["P",[152,2,4,137,145,32,64,1,256]],["X",152],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,2,0],"matrix_rows":[152,2,4,145,137,32,64,25,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,2,0]],["P",[152,2,4,145,137,32,64,25,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,2,0],"matrix_rows":[152,2,4,145,137,32,64,25,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,2,0]],["P",[152,2,4,145,137,32,64,25,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,2,0],"matrix_rows":[152,2,4,145,129,32,64,17,256],"offset":144,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,0]],["P",[152,2,4,145,129,32,64,17,256]],["X",144],["phase",2]]}},"orthogonal_transvections":[153],"port":59,"q":152}, + {"G_rows":[280,2,4,273,265,32,64,128,25],"K_word":[["P",[280,2,4,273,265,32,64,128,25]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,0,2]]],"Z_mask":281,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,1,1,0,0,0,2],"matrix_rows":[280,2,4,265,273,32,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"word":[["D",[0,0,0,24,24,0,0,0,0],[2,0,0,1,1,0,0,0,2]],["P",[280,2,4,265,273,32,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,0,2],"matrix_rows":[280,2,4,273,265,32,64,128,25],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,0,2]],["P",[280,2,4,273,265,32,64,128,25]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,0,2],"matrix_rows":[280,2,4,273,265,32,64,128,25],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,0,2]],["P",[280,2,4,273,265,32,64,128,25]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,0,2],"matrix_rows":[280,2,4,273,257,32,64,128,17],"offset":238,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,0,2]],["P",[280,2,4,273,257,32,64,128,17]],["X",238],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,3,3,0,0,0,2],"matrix_rows":[280,2,4,265,273,32,64,128,1],"offset":280,"phase":3,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"word":[["D",[0,0,0,24,24,0,0,0,0],[2,0,0,3,3,0,0,0,2]],["P",[280,2,4,265,273,32,64,128,1]],["X",280],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,0,2],"matrix_rows":[280,2,4,273,265,32,64,128,25],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,0,2]],["P",[280,2,4,273,265,32,64,128,25]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,2,2,0,0,0,2],"matrix_rows":[280,2,4,273,265,32,64,128,25],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,0,0,0,2]],["P",[280,2,4,273,265,32,64,128,25]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,0,2],"matrix_rows":[280,2,4,273,257,32,64,128,17],"offset":272,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,0,2]],["P",[280,2,4,273,257,32,64,128,17]],["X",272],["phase",2]]}},"orthogonal_transvections":[281],"port":60,"q":280}, + {"G_rows":[104,2,4,97,16,73,41,128,256],"K_word":[["P",[104,2,4,97,16,73,41,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,2,0,0]]],"Z_mask":105,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,1,0,1,2,0,0],"matrix_rows":[104,2,4,73,16,97,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"word":[["D",[0,0,0,40,0,40,0,0,0],[2,0,0,1,0,1,2,0,0]],["P",[104,2,4,73,16,97,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,2,2,0,0],"matrix_rows":[104,2,4,97,16,73,41,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,2,0,0]],["P",[104,2,4,97,16,73,41,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,2,2,0,0],"matrix_rows":[104,2,4,97,16,73,41,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,2,0,0]],["P",[104,2,4,97,16,73,41,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,0],"matrix_rows":[104,2,4,97,16,65,33,128,256],"offset":414,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,0]],["P",[104,2,4,97,16,65,33,128,256]],["X",414],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,3,0,3,2,0,0],"matrix_rows":[104,2,4,73,16,97,1,128,256],"offset":104,"phase":3,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"word":[["D",[0,0,0,40,0,40,0,0,0],[2,0,0,3,0,3,2,0,0]],["P",[104,2,4,73,16,97,1,128,256]],["X",104],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,2,2,0,0],"matrix_rows":[104,2,4,97,16,73,41,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,2,0,0]],["P",[104,2,4,97,16,73,41,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,2,2,0,0],"matrix_rows":[104,2,4,97,16,73,41,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,2,0,0]],["P",[104,2,4,97,16,73,41,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,0],"matrix_rows":[104,2,4,97,16,65,33,128,256],"offset":96,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,0]],["P",[104,2,4,97,16,65,33,128,256]],["X",96],["phase",2]]}},"orthogonal_transvections":[105],"port":61,"q":104}, + {"G_rows":[168,2,4,161,16,137,64,41,256],"K_word":[["P",[168,2,4,161,16,137,64,41,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,2,0]]],"Z_mask":169,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,1,0,1,0,2,0],"matrix_rows":[168,2,4,137,16,161,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"word":[["D",[0,0,0,40,0,40,0,0,0],[2,0,0,1,0,1,0,2,0]],["P",[168,2,4,137,16,161,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,2,0,2,0],"matrix_rows":[168,2,4,161,16,137,64,41,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,2,0]],["P",[168,2,4,161,16,137,64,41,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,2,0,2,0],"matrix_rows":[168,2,4,161,16,137,64,41,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,2,0]],["P",[168,2,4,161,16,137,64,41,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[168,2,4,161,16,129,64,33,256],"offset":350,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,0]],["P",[168,2,4,161,16,129,64,33,256]],["X",350],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,3,0,3,0,2,0],"matrix_rows":[168,2,4,137,16,161,64,1,256],"offset":168,"phase":3,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"word":[["D",[0,0,0,40,0,40,0,0,0],[2,0,0,3,0,3,0,2,0]],["P",[168,2,4,137,16,161,64,1,256]],["X",168],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,2,0,2,0],"matrix_rows":[168,2,4,161,16,137,64,41,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,2,0]],["P",[168,2,4,161,16,137,64,41,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,2,0,2,0],"matrix_rows":[168,2,4,161,16,137,64,41,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,2,0]],["P",[168,2,4,161,16,137,64,41,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[168,2,4,161,16,129,64,33,256],"offset":160,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,0]],["P",[168,2,4,161,16,129,64,33,256]],["X",160],["phase",2]]}},"orthogonal_transvections":[169],"port":62,"q":168}, + {"G_rows":[296,2,4,289,16,265,64,128,41],"K_word":[["P",[296,2,4,289,16,265,64,128,41]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,0,2]]],"Z_mask":297,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,1,0,1,0,0,2],"matrix_rows":[296,2,4,265,16,289,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"word":[["D",[0,0,0,40,0,40,0,0,0],[2,0,0,1,0,1,0,0,2]],["P",[296,2,4,265,16,289,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,2,0,0,2],"matrix_rows":[296,2,4,289,16,265,64,128,41],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,0,2]],["P",[296,2,4,289,16,265,64,128,41]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,2,0,0,2],"matrix_rows":[296,2,4,289,16,265,64,128,41],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,0,2]],["P",[296,2,4,289,16,265,64,128,41]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[296,2,4,289,16,257,64,128,33],"offset":222,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,0,2]],["P",[296,2,4,289,16,257,64,128,33]],["X",222],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,3,0,3,0,0,2],"matrix_rows":[296,2,4,265,16,289,64,128,1],"offset":296,"phase":3,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"word":[["D",[0,0,0,40,0,40,0,0,0],[2,0,0,3,0,3,0,0,2]],["P",[296,2,4,265,16,289,64,128,1]],["X",296],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,2,0,0,2],"matrix_rows":[296,2,4,289,16,265,64,128,41],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,0,2]],["P",[296,2,4,289,16,265,64,128,41]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,2,0,0,2],"matrix_rows":[296,2,4,289,16,265,64,128,41],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,2,0,0,2]],["P",[296,2,4,289,16,265,64,128,41]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[296,2,4,289,16,257,64,128,33],"offset":288,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,0,2]],["P",[296,2,4,289,16,257,64,128,33]],["X",288],["phase",2]]}},"orthogonal_transvections":[297],"port":63,"q":296}, + {"G_rows":[200,2,4,193,16,32,137,73,256],"K_word":[["P",[200,2,4,193,16,32,137,73,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,2,0]]],"Z_mask":201,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,1,0,0,1,2,0],"matrix_rows":[200,2,4,137,16,32,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,0,0,72,0,0,72,0,0]},"word":[["D",[0,0,0,72,0,0,72,0,0],[2,0,0,1,0,0,1,2,0]],["P",[200,2,4,137,16,32,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,2,2,0],"matrix_rows":[200,2,4,193,16,32,137,73,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,2,0]],["P",[200,2,4,193,16,32,137,73,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,0,2,2,0],"matrix_rows":[200,2,4,193,16,32,137,73,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,2,0]],["P",[200,2,4,193,16,32,137,73,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,0],"matrix_rows":[200,2,4,193,16,32,129,65,256],"offset":318,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,0]],["P",[200,2,4,193,16,32,129,65,256]],["X",318],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,3,0,0,3,2,0],"matrix_rows":[200,2,4,137,16,32,193,1,256],"offset":200,"phase":3,"quadratic_rows":[0,0,0,72,0,0,72,0,0]},"word":[["D",[0,0,0,72,0,0,72,0,0],[2,0,0,3,0,0,3,2,0]],["P",[200,2,4,137,16,32,193,1,256]],["X",200],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,2,2,0],"matrix_rows":[200,2,4,193,16,32,137,73,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,2,0]],["P",[200,2,4,193,16,32,137,73,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,0,2,2,0],"matrix_rows":[200,2,4,193,16,32,137,73,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,2,0]],["P",[200,2,4,193,16,32,137,73,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,0],"matrix_rows":[200,2,4,193,16,32,129,65,256],"offset":192,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,0]],["P",[200,2,4,193,16,32,129,65,256]],["X",192],["phase",2]]}},"orthogonal_transvections":[201],"port":64,"q":200}, + {"G_rows":[328,2,4,321,16,32,265,128,73],"K_word":[["P",[328,2,4,321,16,32,265,128,73]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,0,2]]],"Z_mask":329,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,1,0,0,1,0,2],"matrix_rows":[328,2,4,265,16,32,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,0,0,72,0,0,72,0,0]},"word":[["D",[0,0,0,72,0,0,72,0,0],[2,0,0,1,0,0,1,0,2]],["P",[328,2,4,265,16,32,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,2,0,2],"matrix_rows":[328,2,4,321,16,32,265,128,73],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,0,2]],["P",[328,2,4,321,16,32,265,128,73]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,0,2,0,2],"matrix_rows":[328,2,4,321,16,32,265,128,73],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,0,2]],["P",[328,2,4,321,16,32,265,128,73]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[328,2,4,321,16,32,257,128,65],"offset":190,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,0,2]],["P",[328,2,4,321,16,32,257,128,65]],["X",190],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,3,0,0,3,0,2],"matrix_rows":[328,2,4,265,16,32,321,128,1],"offset":328,"phase":3,"quadratic_rows":[0,0,0,72,0,0,72,0,0]},"word":[["D",[0,0,0,72,0,0,72,0,0],[2,0,0,3,0,0,3,0,2]],["P",[328,2,4,265,16,32,321,128,1]],["X",328],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,2,0,2],"matrix_rows":[328,2,4,321,16,32,265,128,73],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,0,2]],["P",[328,2,4,321,16,32,265,128,73]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,0,2,0,2],"matrix_rows":[328,2,4,321,16,32,265,128,73],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,2,0,2]],["P",[328,2,4,321,16,32,265,128,73]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[328,2,4,321,16,32,257,128,65],"offset":320,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,0,2]],["P",[328,2,4,321,16,32,257,128,65]],["X",320],["phase",2]]}},"orthogonal_transvections":[329],"port":65,"q":328}, + {"G_rows":[392,2,4,385,16,32,64,265,137],"K_word":[["P",[392,2,4,385,16,32,64,265,137]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,2,2]]],"Z_mask":393,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,1,0,0,0,1,2],"matrix_rows":[392,2,4,265,16,32,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,0,0,136,0,0,0,136,0]},"word":[["D",[0,0,0,136,0,0,0,136,0],[2,0,0,1,0,0,0,1,2]],["P",[392,2,4,265,16,32,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,2,2],"matrix_rows":[392,2,4,385,16,32,64,265,137],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,2,2]],["P",[392,2,4,385,16,32,64,265,137]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,2,2],"matrix_rows":[392,2,4,385,16,32,64,265,137],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,2,2]],["P",[392,2,4,385,16,32,64,265,137]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[392,2,4,385,16,32,64,257,129],"offset":126,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[392,2,4,385,16,32,64,257,129]],["X",126],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,3,0,0,0,3,2],"matrix_rows":[392,2,4,265,16,32,64,385,1],"offset":392,"phase":3,"quadratic_rows":[0,0,0,136,0,0,0,136,0]},"word":[["D",[0,0,0,136,0,0,0,136,0],[2,0,0,3,0,0,0,3,2]],["P",[392,2,4,265,16,32,64,385,1]],["X",392],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,2,2],"matrix_rows":[392,2,4,385,16,32,64,265,137],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,2,2]],["P",[392,2,4,385,16,32,64,265,137]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,2,0,0,0,2,2],"matrix_rows":[392,2,4,385,16,32,64,265,137],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,0,0,0,2,2]],["P",[392,2,4,385,16,32,64,265,137]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[392,2,4,385,16,32,64,257,129],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[392,2,4,385,16,32,64,257,129]],["X",384],["phase",2]]}},"orthogonal_transvections":[393],"port":66,"q":392}, + {"G_rows":[112,2,4,8,97,81,49,128,256],"K_word":[["P",[112,2,4,8,97,81,49,128,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,2,0,0]]],"Z_mask":113,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,0,1,1,2,0,0],"matrix_rows":[112,2,4,8,81,97,1,128,256],"offset":0,"phase":3,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"word":[["D",[0,0,0,0,48,48,0,0,0],[2,0,0,0,1,1,2,0,0]],["P",[112,2,4,8,81,97,1,128,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,2,2,0,0],"matrix_rows":[112,2,4,8,97,81,49,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,2,0,0]],["P",[112,2,4,8,97,81,49,128,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,2,2,0,0],"matrix_rows":[112,2,4,8,97,81,49,128,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,2,0,0]],["P",[112,2,4,8,97,81,49,128,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,0],"matrix_rows":[112,2,4,8,97,65,33,128,256],"offset":414,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,0]],["P",[112,2,4,8,97,65,33,128,256]],["X",414],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,0,3,3,2,0,0],"matrix_rows":[112,2,4,8,81,97,1,128,256],"offset":112,"phase":3,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"word":[["D",[0,0,0,0,48,48,0,0,0],[2,0,0,0,3,3,2,0,0]],["P",[112,2,4,8,81,97,1,128,256]],["X",112],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,2,2,0,0],"matrix_rows":[112,2,4,8,97,81,49,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,2,0,0]],["P",[112,2,4,8,97,81,49,128,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,2,2,0,0],"matrix_rows":[112,2,4,8,97,81,49,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,2,0,0]],["P",[112,2,4,8,97,81,49,128,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,0],"matrix_rows":[112,2,4,8,97,65,33,128,256],"offset":96,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,0]],["P",[112,2,4,8,97,65,33,128,256]],["X",96],["phase",2]]}},"orthogonal_transvections":[113],"port":67,"q":112}, + {"G_rows":[176,2,4,8,161,145,64,49,256],"K_word":[["P",[176,2,4,8,161,145,64,49,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,2,0]]],"Z_mask":177,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,0,1,1,0,2,0],"matrix_rows":[176,2,4,8,145,161,64,1,256],"offset":0,"phase":3,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"word":[["D",[0,0,0,0,48,48,0,0,0],[2,0,0,0,1,1,0,2,0]],["P",[176,2,4,8,145,161,64,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,2,0],"matrix_rows":[176,2,4,8,161,145,64,49,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,2,0]],["P",[176,2,4,8,161,145,64,49,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,2,0],"matrix_rows":[176,2,4,8,161,145,64,49,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,2,0]],["P",[176,2,4,8,161,145,64,49,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[176,2,4,8,161,129,64,33,256],"offset":350,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,0]],["P",[176,2,4,8,161,129,64,33,256]],["X",350],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,0,3,3,0,2,0],"matrix_rows":[176,2,4,8,145,161,64,1,256],"offset":176,"phase":3,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"word":[["D",[0,0,0,0,48,48,0,0,0],[2,0,0,0,3,3,0,2,0]],["P",[176,2,4,8,145,161,64,1,256]],["X",176],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,2,0],"matrix_rows":[176,2,4,8,161,145,64,49,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,2,0]],["P",[176,2,4,8,161,145,64,49,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,2,0],"matrix_rows":[176,2,4,8,161,145,64,49,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,2,0]],["P",[176,2,4,8,161,145,64,49,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[176,2,4,8,161,129,64,33,256],"offset":160,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,0]],["P",[176,2,4,8,161,129,64,33,256]],["X",160],["phase",2]]}},"orthogonal_transvections":[177],"port":68,"q":176}, + {"G_rows":[304,2,4,8,289,273,64,128,49],"K_word":[["P",[304,2,4,8,289,273,64,128,49]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,0,2]]],"Z_mask":305,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,0,1,1,0,0,2],"matrix_rows":[304,2,4,8,273,289,64,128,1],"offset":0,"phase":3,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"word":[["D",[0,0,0,0,48,48,0,0,0],[2,0,0,0,1,1,0,0,2]],["P",[304,2,4,8,273,289,64,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,0,2],"matrix_rows":[304,2,4,8,289,273,64,128,49],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,0,2]],["P",[304,2,4,8,289,273,64,128,49]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,0,2],"matrix_rows":[304,2,4,8,289,273,64,128,49],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,0,2]],["P",[304,2,4,8,289,273,64,128,49]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[304,2,4,8,289,257,64,128,33],"offset":222,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,0,2]],["P",[304,2,4,8,289,257,64,128,33]],["X",222],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,0,3,3,0,0,2],"matrix_rows":[304,2,4,8,273,289,64,128,1],"offset":304,"phase":3,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"word":[["D",[0,0,0,0,48,48,0,0,0],[2,0,0,0,3,3,0,0,2]],["P",[304,2,4,8,273,289,64,128,1]],["X",304],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,0,2],"matrix_rows":[304,2,4,8,289,273,64,128,49],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,0,2]],["P",[304,2,4,8,289,273,64,128,49]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,2,0,0,2],"matrix_rows":[304,2,4,8,289,273,64,128,49],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,2,0,0,2]],["P",[304,2,4,8,289,273,64,128,49]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[304,2,4,8,289,257,64,128,33],"offset":288,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,0,2]],["P",[304,2,4,8,289,257,64,128,33]],["X",288],["phase",2]]}},"orthogonal_transvections":[305],"port":69,"q":304}, + {"G_rows":[208,2,4,8,193,32,145,81,256],"K_word":[["P",[208,2,4,8,193,32,145,81,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,2,0]]],"Z_mask":209,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,0,1,0,1,2,0],"matrix_rows":[208,2,4,8,145,32,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,0,0,0,80,0,80,0,0]},"word":[["D",[0,0,0,0,80,0,80,0,0],[2,0,0,0,1,0,1,2,0]],["P",[208,2,4,8,145,32,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,2,0],"matrix_rows":[208,2,4,8,193,32,145,81,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,2,0]],["P",[208,2,4,8,193,32,145,81,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,2,0],"matrix_rows":[208,2,4,8,193,32,145,81,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,2,0]],["P",[208,2,4,8,193,32,145,81,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,0],"matrix_rows":[208,2,4,8,193,32,129,65,256],"offset":318,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,0]],["P",[208,2,4,8,193,32,129,65,256]],["X",318],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,0,3,0,3,2,0],"matrix_rows":[208,2,4,8,145,32,193,1,256],"offset":208,"phase":3,"quadratic_rows":[0,0,0,0,80,0,80,0,0]},"word":[["D",[0,0,0,0,80,0,80,0,0],[2,0,0,0,3,0,3,2,0]],["P",[208,2,4,8,145,32,193,1,256]],["X",208],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,2,0],"matrix_rows":[208,2,4,8,193,32,145,81,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,2,0]],["P",[208,2,4,8,193,32,145,81,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,2,0],"matrix_rows":[208,2,4,8,193,32,145,81,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,2,0]],["P",[208,2,4,8,193,32,145,81,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,0],"matrix_rows":[208,2,4,8,193,32,129,65,256],"offset":192,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,0]],["P",[208,2,4,8,193,32,129,65,256]],["X",192],["phase",2]]}},"orthogonal_transvections":[209],"port":70,"q":208}, + {"G_rows":[336,2,4,8,321,32,273,128,81],"K_word":[["P",[336,2,4,8,321,32,273,128,81]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,0,2]]],"Z_mask":337,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,0,1,0,1,0,2],"matrix_rows":[336,2,4,8,273,32,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,0,0,0,80,0,80,0,0]},"word":[["D",[0,0,0,0,80,0,80,0,0],[2,0,0,0,1,0,1,0,2]],["P",[336,2,4,8,273,32,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,0,2],"matrix_rows":[336,2,4,8,321,32,273,128,81],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,0,2]],["P",[336,2,4,8,321,32,273,128,81]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,0,2],"matrix_rows":[336,2,4,8,321,32,273,128,81],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,0,2]],["P",[336,2,4,8,321,32,273,128,81]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[336,2,4,8,321,32,257,128,65],"offset":190,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,0,2]],["P",[336,2,4,8,321,32,257,128,65]],["X",190],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,0,3,0,3,0,2],"matrix_rows":[336,2,4,8,273,32,321,128,1],"offset":336,"phase":3,"quadratic_rows":[0,0,0,0,80,0,80,0,0]},"word":[["D",[0,0,0,0,80,0,80,0,0],[2,0,0,0,3,0,3,0,2]],["P",[336,2,4,8,273,32,321,128,1]],["X",336],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,0,2],"matrix_rows":[336,2,4,8,321,32,273,128,81],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,0,2]],["P",[336,2,4,8,321,32,273,128,81]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,0,2,0,2],"matrix_rows":[336,2,4,8,321,32,273,128,81],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,2,0,2]],["P",[336,2,4,8,321,32,273,128,81]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[336,2,4,8,321,32,257,128,65],"offset":320,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,0,2]],["P",[336,2,4,8,321,32,257,128,65]],["X",320],["phase",2]]}},"orthogonal_transvections":[337],"port":71,"q":336}, + {"G_rows":[400,2,4,8,385,32,64,273,145],"K_word":[["P",[400,2,4,8,385,32,64,273,145]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,2]]],"Z_mask":401,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,0,1,0,0,1,2],"matrix_rows":[400,2,4,8,273,32,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,0,0,0,144,0,0,144,0]},"word":[["D",[0,0,0,0,144,0,0,144,0],[2,0,0,0,1,0,0,1,2]],["P",[400,2,4,8,273,32,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,2,2],"matrix_rows":[400,2,4,8,385,32,64,273,145],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,2]],["P",[400,2,4,8,385,32,64,273,145]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,2,2],"matrix_rows":[400,2,4,8,385,32,64,273,145],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,2]],["P",[400,2,4,8,385,32,64,273,145]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[400,2,4,8,385,32,64,257,129],"offset":126,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[400,2,4,8,385,32,64,257,129]],["X",126],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,0,3,0,0,3,2],"matrix_rows":[400,2,4,8,273,32,64,385,1],"offset":400,"phase":3,"quadratic_rows":[0,0,0,0,144,0,0,144,0]},"word":[["D",[0,0,0,0,144,0,0,144,0],[2,0,0,0,3,0,0,3,2]],["P",[400,2,4,8,273,32,64,385,1]],["X",400],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,2,2],"matrix_rows":[400,2,4,8,385,32,64,273,145],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,2]],["P",[400,2,4,8,385,32,64,273,145]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,0,2,0,0,2,2],"matrix_rows":[400,2,4,8,385,32,64,273,145],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,2,0,0,2,2]],["P",[400,2,4,8,385,32,64,273,145]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[400,2,4,8,385,32,64,257,129],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[400,2,4,8,385,32,64,257,129]],["X",384],["phase",2]]}},"orthogonal_transvections":[401],"port":72,"q":400}, + {"G_rows":[224,2,4,8,16,193,161,97,256],"K_word":[["P",[224,2,4,8,16,193,161,97,256]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,2,0]]],"Z_mask":225,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,0,0,1,1,2,0],"matrix_rows":[224,2,4,8,16,161,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,0,0,0,0,96,96,0,0]},"word":[["D",[0,0,0,0,0,96,96,0,0],[2,0,0,0,0,1,1,2,0]],["P",[224,2,4,8,16,161,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,2,0],"matrix_rows":[224,2,4,8,16,193,161,97,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,2,0]],["P",[224,2,4,8,16,193,161,97,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,2,0],"matrix_rows":[224,2,4,8,16,193,161,97,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,2,0]],["P",[224,2,4,8,16,193,161,97,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,0],"matrix_rows":[224,2,4,8,16,193,129,65,256],"offset":318,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,0]],["P",[224,2,4,8,16,193,129,65,256]],["X",318],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,0,0,3,3,2,0],"matrix_rows":[224,2,4,8,16,161,193,1,256],"offset":224,"phase":3,"quadratic_rows":[0,0,0,0,0,96,96,0,0]},"word":[["D",[0,0,0,0,0,96,96,0,0],[2,0,0,0,0,3,3,2,0]],["P",[224,2,4,8,16,161,193,1,256]],["X",224],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,2,0],"matrix_rows":[224,2,4,8,16,193,161,97,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,2,0]],["P",[224,2,4,8,16,193,161,97,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,2,0],"matrix_rows":[224,2,4,8,16,193,161,97,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,2,0]],["P",[224,2,4,8,16,193,161,97,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,0],"matrix_rows":[224,2,4,8,16,193,129,65,256],"offset":192,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,0]],["P",[224,2,4,8,16,193,129,65,256]],["X",192],["phase",2]]}},"orthogonal_transvections":[225],"port":73,"q":224}, + {"G_rows":[352,2,4,8,16,321,289,128,97],"K_word":[["P",[352,2,4,8,16,321,289,128,97]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,2]]],"Z_mask":353,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,0,0,1,1,0,2],"matrix_rows":[352,2,4,8,16,289,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,0,0,0,0,96,96,0,0]},"word":[["D",[0,0,0,0,0,96,96,0,0],[2,0,0,0,0,1,1,0,2]],["P",[352,2,4,8,16,289,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,2],"matrix_rows":[352,2,4,8,16,321,289,128,97],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,2]],["P",[352,2,4,8,16,321,289,128,97]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,2],"matrix_rows":[352,2,4,8,16,321,289,128,97],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,2]],["P",[352,2,4,8,16,321,289,128,97]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[352,2,4,8,16,321,257,128,65],"offset":190,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,0,2]],["P",[352,2,4,8,16,321,257,128,65]],["X",190],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,0,0,3,3,0,2],"matrix_rows":[352,2,4,8,16,289,321,128,1],"offset":352,"phase":3,"quadratic_rows":[0,0,0,0,0,96,96,0,0]},"word":[["D",[0,0,0,0,0,96,96,0,0],[2,0,0,0,0,3,3,0,2]],["P",[352,2,4,8,16,289,321,128,1]],["X",352],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,2],"matrix_rows":[352,2,4,8,16,321,289,128,97],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,2]],["P",[352,2,4,8,16,321,289,128,97]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,0,0,2,2,0,2],"matrix_rows":[352,2,4,8,16,321,289,128,97],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,2,0,2]],["P",[352,2,4,8,16,321,289,128,97]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[352,2,4,8,16,321,257,128,65],"offset":320,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,0,2]],["P",[352,2,4,8,16,321,257,128,65]],["X",320],["phase",2]]}},"orthogonal_transvections":[353],"port":74,"q":352}, + {"G_rows":[416,2,4,8,16,385,64,289,161],"K_word":[["P",[416,2,4,8,16,385,64,289,161]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,2]]],"Z_mask":417,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,0,0,1,0,1,2],"matrix_rows":[416,2,4,8,16,289,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,0,0,0,0,160,0,160,0]},"word":[["D",[0,0,0,0,0,160,0,160,0],[2,0,0,0,0,1,0,1,2]],["P",[416,2,4,8,16,289,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,2],"matrix_rows":[416,2,4,8,16,385,64,289,161],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,2]],["P",[416,2,4,8,16,385,64,289,161]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,2],"matrix_rows":[416,2,4,8,16,385,64,289,161],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,2]],["P",[416,2,4,8,16,385,64,289,161]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[416,2,4,8,16,385,64,257,129],"offset":126,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[416,2,4,8,16,385,64,257,129]],["X",126],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,0,0,3,0,3,2],"matrix_rows":[416,2,4,8,16,289,64,385,1],"offset":416,"phase":3,"quadratic_rows":[0,0,0,0,0,160,0,160,0]},"word":[["D",[0,0,0,0,0,160,0,160,0],[2,0,0,0,0,3,0,3,2]],["P",[416,2,4,8,16,289,64,385,1]],["X",416],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,2],"matrix_rows":[416,2,4,8,16,385,64,289,161],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,2]],["P",[416,2,4,8,16,385,64,289,161]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,0,0,2,0,2,2],"matrix_rows":[416,2,4,8,16,385,64,289,161],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,2,0,2,2]],["P",[416,2,4,8,16,385,64,289,161]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[416,2,4,8,16,385,64,257,129],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[416,2,4,8,16,385,64,257,129]],["X",384],["phase",2]]}},"orthogonal_transvections":[417],"port":75,"q":416}, + {"G_rows":[448,2,4,8,16,32,385,321,193],"K_word":[["P",[448,2,4,8,16,32,385,321,193]],["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,2]]],"Z_mask":449,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,0,0,0,0,1,1,2],"matrix_rows":[448,2,4,8,16,32,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,0,0,0,0,0,192,192,0]},"word":[["D",[0,0,0,0,0,0,192,192,0],[2,0,0,0,0,0,1,1,2]],["P",[448,2,4,8,16,32,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,2],"matrix_rows":[448,2,4,8,16,32,385,321,193],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,2]],["P",[448,2,4,8,16,32,385,321,193]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,2],"matrix_rows":[448,2,4,8,16,32,385,321,193],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,2]],["P",[448,2,4,8,16,32,385,321,193]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[448,2,4,8,16,32,385,257,129],"offset":126,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[448,2,4,8,16,32,385,257,129]],["X",126],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,0,0,0,0,3,3,2],"matrix_rows":[448,2,4,8,16,32,321,385,1],"offset":448,"phase":3,"quadratic_rows":[0,0,0,0,0,0,192,192,0]},"word":[["D",[0,0,0,0,0,0,192,192,0],[2,0,0,0,0,0,3,3,2]],["P",[448,2,4,8,16,32,321,385,1]],["X",448],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,2],"matrix_rows":[448,2,4,8,16,32,385,321,193],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,2]],["P",[448,2,4,8,16,32,385,321,193]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,0,0,0,0,2,2,2],"matrix_rows":[448,2,4,8,16,32,385,321,193],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,2,2,2]],["P",[448,2,4,8,16,32,385,321,193]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,0,0,0,0,2,2],"matrix_rows":[448,2,4,8,16,32,385,257,129],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,0,0,0,0,2,2]],["P",[448,2,4,8,16,32,385,257,129]],["X",384],["phase",2]]}},"orthogonal_transvections":[449],"port":76,"q":448}, + {"G_rows":[508,2,505,501,493,477,445,381,253],"K_word":[["P",[508,2,505,501,493,477,445,381,253]],["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,2,2,2]]],"Z_mask":509,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,0,1,1,1,1,1,1,2],"matrix_rows":[508,2,261,265,273,289,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,0,252,252,252,252,252,252,0]},"word":[["D",[0,0,252,252,252,252,252,252,0],[2,0,1,1,1,1,1,1,2]],["P",[508,2,261,265,273,289,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,2,2,2,2],"matrix_rows":[508,2,505,501,493,477,445,381,253],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,2,2,2]],["P",[508,2,505,501,493,477,445,381,253]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,0,2,2,2,2,2,2,2],"matrix_rows":[508,2,505,501,493,477,445,381,253],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,2,2,2]],["P",[508,2,505,501,493,477,445,381,253]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,2,2,2,2],"matrix_rows":[508,2,505,497,489,473,441,377,249],"offset":6,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,2,2,2,2]],["P",[508,2,505,497,489,473,441,377,249]],["X",6],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,0,3,3,3,3,3,3,2],"matrix_rows":[508,2,261,265,273,289,321,385,1],"offset":508,"phase":3,"quadratic_rows":[0,0,252,252,252,252,252,252,0]},"word":[["D",[0,0,252,252,252,252,252,252,0],[2,0,3,3,3,3,3,3,2]],["P",[508,2,261,265,273,289,321,385,1]],["X",508],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,2,2,2,2],"matrix_rows":[508,2,505,501,493,477,445,381,253],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,2,2,2]],["P",[508,2,505,501,493,477,445,381,253]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,0,2,2,2,2,2,2,2],"matrix_rows":[508,2,505,501,493,477,445,381,253],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,2,2,2]],["P",[508,2,505,501,493,477,445,381,253]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,2,2,2,2],"matrix_rows":[508,2,505,497,489,473,441,377,249],"offset":504,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,2,2,2,2]],["P",[508,2,505,497,489,473,441,377,249]],["X",504],["phase",2]]}},"orthogonal_transvections":[509],"port":77,"q":508}, + {"G_rows":[506,505,4,499,491,475,443,379,251],"K_word":[["P",[506,505,4,499,491,475,443,379,251]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,2,2,2,2]]],"Z_mask":507,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,1,1,1,1,1,2],"matrix_rows":[506,259,4,265,273,289,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,250,0,250,250,250,250,250,0]},"word":[["D",[0,250,0,250,250,250,250,250,0],[2,1,0,1,1,1,1,1,2]],["P",[506,259,4,265,273,289,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,2,2,2,2,2,2],"matrix_rows":[506,505,4,499,491,475,443,379,251],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,2,2,2,2]],["P",[506,505,4,499,491,475,443,379,251]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,2,2,2,2,2,2],"matrix_rows":[506,505,4,499,491,475,443,379,251],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,2,2,2,2]],["P",[506,505,4,499,491,475,443,379,251]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,2,2,2,2],"matrix_rows":[506,505,4,497,489,473,441,377,249],"offset":6,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,2,2,2,2]],["P",[506,505,4,497,489,473,441,377,249]],["X",6],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,3,3,3,3,3,2],"matrix_rows":[506,259,4,265,273,289,321,385,1],"offset":506,"phase":3,"quadratic_rows":[0,250,0,250,250,250,250,250,0]},"word":[["D",[0,250,0,250,250,250,250,250,0],[2,3,0,3,3,3,3,3,2]],["P",[506,259,4,265,273,289,321,385,1]],["X",506],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,2,2,2,2,2,2],"matrix_rows":[506,505,4,499,491,475,443,379,251],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,2,2,2,2]],["P",[506,505,4,499,491,475,443,379,251]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,2,2,2,2,2,2],"matrix_rows":[506,505,4,499,491,475,443,379,251],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,2,2,2,2]],["P",[506,505,4,499,491,475,443,379,251]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,0,2,2,2,2,2,2],"matrix_rows":[506,505,4,497,489,473,441,377,249],"offset":504,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,0,2,2,2,2,2,2]],["P",[506,505,4,497,489,473,441,377,249]],["X",504],["phase",2]]}},"orthogonal_transvections":[507],"port":78,"q":506}, + {"G_rows":[502,501,499,8,487,471,439,375,247],"K_word":[["P",[502,501,499,8,487,471,439,375,247]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]]],"Z_mask":503,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,1,1,1,1,2],"matrix_rows":[502,259,261,8,273,289,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,246,246,0,246,246,246,246,0]},"word":[["D",[0,246,246,0,246,246,246,246,0],[2,1,1,0,1,1,1,1,2]],["P",[502,259,261,8,273,289,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[502,501,499,8,487,471,439,375,247],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[502,501,499,8,487,471,439,375,247]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[502,501,499,8,487,471,439,375,247],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[502,501,499,8,487,471,439,375,247]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,0,2,2,2,2,2],"matrix_rows":[502,501,497,8,485,469,437,373,245],"offset":10,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,2,2,2,2]],["P",[502,501,497,8,485,469,437,373,245]],["X",10],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,3,3,3,3,2],"matrix_rows":[502,259,261,8,273,289,321,385,1],"offset":502,"phase":3,"quadratic_rows":[0,246,246,0,246,246,246,246,0]},"word":[["D",[0,246,246,0,246,246,246,246,0],[2,3,3,0,3,3,3,3,2]],["P",[502,259,261,8,273,289,321,385,1]],["X",502],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[502,501,499,8,487,471,439,375,247],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[502,501,499,8,487,471,439,375,247]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[502,501,499,8,487,471,439,375,247],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[502,501,499,8,487,471,439,375,247]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,0,2,2,2,2,2],"matrix_rows":[502,501,497,8,485,469,437,373,245],"offset":500,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,0,2,2,2,2,2]],["P",[502,501,497,8,485,469,437,373,245]],["X",500],["phase",2]]}},"orthogonal_transvections":[503],"port":79,"q":502}, + {"G_rows":[494,493,491,487,16,463,431,367,239],"K_word":[["P",[494,493,491,487,16,463,431,367,239]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]]],"Z_mask":495,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,0,1,1,1,2],"matrix_rows":[494,259,261,265,16,289,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"word":[["D",[0,238,238,238,0,238,238,238,0],[2,1,1,1,0,1,1,1,2]],["P",[494,259,261,265,16,289,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[494,493,491,487,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[494,493,491,487,16,463,431,367,239]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[494,493,491,487,16,463,431,367,239],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[494,493,491,487,16,463,431,367,239]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,2,0,2,2,2,2],"matrix_rows":[494,493,489,485,16,461,429,365,237],"offset":18,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,2,2,2,2]],["P",[494,493,489,485,16,461,429,365,237]],["X",18],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,0,3,3,3,2],"matrix_rows":[494,259,261,265,16,289,321,385,1],"offset":494,"phase":3,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"word":[["D",[0,238,238,238,0,238,238,238,0],[2,3,3,3,0,3,3,3,2]],["P",[494,259,261,265,16,289,321,385,1]],["X",494],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[494,493,491,487,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[494,493,491,487,16,463,431,367,239]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[494,493,491,487,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[494,493,491,487,16,463,431,367,239]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,2,0,2,2,2,2],"matrix_rows":[494,493,489,485,16,461,429,365,237],"offset":492,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,0,2,2,2,2]],["P",[494,493,489,485,16,461,429,365,237]],["X",492],["phase",2]]}},"orthogonal_transvections":[495],"port":80,"q":494}, + {"G_rows":[478,477,475,471,463,32,415,351,223],"K_word":[["P",[478,477,475,471,463,32,415,351,223]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]]],"Z_mask":479,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,0,1,1,2],"matrix_rows":[478,259,261,265,273,32,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"word":[["D",[0,222,222,222,222,0,222,222,0],[2,1,1,1,1,0,1,1,2]],["P",[478,259,261,265,273,32,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[478,477,475,471,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[478,477,475,471,463,32,415,351,223]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[478,477,475,471,463,32,415,351,223],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[478,477,475,471,463,32,415,351,223]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,0,2,2,2],"matrix_rows":[478,477,473,469,461,32,413,349,221],"offset":34,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,0,2,2,2]],["P",[478,477,473,469,461,32,413,349,221]],["X",34],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,0,3,3,2],"matrix_rows":[478,259,261,265,273,32,321,385,1],"offset":478,"phase":3,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"word":[["D",[0,222,222,222,222,0,222,222,0],[2,3,3,3,3,0,3,3,2]],["P",[478,259,261,265,273,32,321,385,1]],["X",478],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[478,477,475,471,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[478,477,475,471,463,32,415,351,223]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[478,477,475,471,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[478,477,475,471,463,32,415,351,223]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,0,2,2,2],"matrix_rows":[478,477,473,469,461,32,413,349,221],"offset":476,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,0,2,2,2]],["P",[478,477,473,469,461,32,413,349,221]],["X",476],["phase",2]]}},"orthogonal_transvections":[479],"port":81,"q":478}, + {"G_rows":[446,445,443,439,431,415,64,319,191],"K_word":[["P",[446,445,443,439,431,415,64,319,191]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]]],"Z_mask":447,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,0,1,2],"matrix_rows":[446,259,261,265,273,289,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,1,1,1,1,1,0,1,2]],["P",[446,259,261,265,273,289,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[446,445,443,439,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[446,445,443,439,431,415,64,319,191]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[446,445,443,439,431,415,64,319,191],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[446,445,443,439,431,415,64,319,191]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,2,0,2,2],"matrix_rows":[446,445,441,437,429,413,64,317,189],"offset":66,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,0,2,2]],["P",[446,445,441,437,429,413,64,317,189]],["X",66],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,0,3,2],"matrix_rows":[446,259,261,265,273,289,64,385,1],"offset":446,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,3,3,3,3,3,0,3,2]],["P",[446,259,261,265,273,289,64,385,1]],["X",446],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[446,445,443,439,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[446,445,443,439,431,415,64,319,191]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[446,445,443,439,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[446,445,443,439,431,415,64,319,191]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,2,0,2,2],"matrix_rows":[446,445,441,437,429,413,64,317,189],"offset":444,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,0,2,2]],["P",[446,445,441,437,429,413,64,317,189]],["X",444],["phase",2]]}},"orthogonal_transvections":[447],"port":82,"q":446}, + {"G_rows":[382,381,379,375,367,351,319,128,127],"K_word":[["P",[382,381,379,375,367,351,319,128,127]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]]],"Z_mask":383,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,0,2],"matrix_rows":[382,259,261,265,273,289,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,0,2]],["P",[382,259,261,265,273,289,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[382,381,379,375,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[382,381,379,375,367,351,319,128,127]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[382,381,379,375,367,351,319,128,127],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[382,381,379,375,367,351,319,128,127]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,2,2,0,2],"matrix_rows":[382,381,377,373,365,349,317,128,125],"offset":130,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,2,0,2]],["P",[382,381,377,373,365,349,317,128,125]],["X",130],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,0,2],"matrix_rows":[382,259,261,265,273,289,321,128,1],"offset":382,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,0,2]],["P",[382,259,261,265,273,289,321,128,1]],["X",382],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[382,381,379,375,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[382,381,379,375,367,351,319,128,127]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[382,381,379,375,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[382,381,379,375,367,351,319,128,127]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,2,2,0,2],"matrix_rows":[382,381,377,373,365,349,317,128,125],"offset":380,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,2,0,2]],["P",[382,381,377,373,365,349,317,128,125]],["X",380],["phase",2]]}},"orthogonal_transvections":[383],"port":83,"q":382}, + {"G_rows":[254,253,251,247,239,223,191,127,256],"K_word":[["P",[254,253,251,247,239,223,191,127,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]]],"Z_mask":255,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,2,0],"matrix_rows":[254,131,133,137,145,161,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,2,0]],["P",[254,131,133,137,145,161,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[254,253,251,247,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[254,253,251,247,239,223,191,127,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[254,253,251,247,239,223,191,127,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[254,253,251,247,239,223,191,127,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,2,2,2,0],"matrix_rows":[254,253,249,245,237,221,189,125,256],"offset":258,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,2,2,0]],["P",[254,253,249,245,237,221,189,125,256]],["X",258],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,2,0],"matrix_rows":[254,131,133,137,145,161,193,1,256],"offset":254,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,2,0]],["P",[254,131,133,137,145,161,193,1,256]],["X",254],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[254,253,251,247,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[254,253,251,247,239,223,191,127,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[254,253,251,247,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[254,253,251,247,239,223,191,127,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[2,0,2,2,2,2,2,2,0],"matrix_rows":[254,253,249,245,237,221,189,125,256],"offset":252,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,0,2,2,2,2,2,2,0]],["P",[254,253,249,245,237,221,189,125,256]],["X",252],["phase",2]]}},"orthogonal_transvections":[255],"port":84,"q":254}, + {"G_rows":[505,506,4,499,491,475,443,379,251],"K_word":[["P",[505,506,4,499,491,475,443,379,251]],["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,2,2,2,2]]],"Z_mask":507,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,0,1,1,1,1,1,2],"matrix_rows":[259,506,4,265,273,289,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,250,0,250,250,250,250,250,0]},"word":[["D",[0,250,0,250,250,250,250,250,0],[2,1,0,1,1,1,1,1,2]],["P",[259,506,4,265,273,289,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,0,2,2,2,2,2,2],"matrix_rows":[505,506,4,499,491,475,443,379,251],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,2,2,2,2]],["P",[505,506,4,499,491,475,443,379,251]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,0,2,2,2,2,2,2],"matrix_rows":[505,506,4,499,491,475,443,379,251],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,2,2,2,2]],["P",[505,506,4,499,491,475,443,379,251]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,0,2,2,2,2,2,2],"matrix_rows":[505,506,4,498,490,474,442,378,250],"offset":6,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,2,2,2,2,2,2]],["P",[505,506,4,498,490,474,442,378,250]],["X",6],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,0,3,3,3,3,3,2],"matrix_rows":[259,506,4,265,273,289,321,385,1],"offset":505,"phase":3,"quadratic_rows":[0,250,0,250,250,250,250,250,0]},"word":[["D",[0,250,0,250,250,250,250,250,0],[2,3,0,3,3,3,3,3,2]],["P",[259,506,4,265,273,289,321,385,1]],["X",505],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,0,2,2,2,2,2,2],"matrix_rows":[505,506,4,499,491,475,443,379,251],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,2,2,2,2]],["P",[505,506,4,499,491,475,443,379,251]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,0,2,2,2,2,2,2],"matrix_rows":[505,506,4,499,491,475,443,379,251],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,0,2,2,2,2,2,2]],["P",[505,506,4,499,491,475,443,379,251]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,0,2,2,2,2,2,2],"matrix_rows":[505,506,4,498,490,474,442,378,250],"offset":504,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,0,2,2,2,2,2,2]],["P",[505,506,4,498,490,474,442,378,250]],["X",504],["phase",2]]}},"orthogonal_transvections":[3,507],"port":85,"q":505}, + {"G_rows":[501,502,499,8,487,471,439,375,247],"K_word":[["P",[501,502,499,8,487,471,439,375,247]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]]],"Z_mask":503,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,1,1,1,1,2],"matrix_rows":[259,502,261,8,273,289,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,246,246,0,246,246,246,246,0]},"word":[["D",[0,246,246,0,246,246,246,246,0],[2,1,1,0,1,1,1,1,2]],["P",[259,502,261,8,273,289,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[501,502,499,8,487,471,439,375,247],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[501,502,499,8,487,471,439,375,247]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[501,502,499,8,487,471,439,375,247],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[501,502,499,8,487,471,439,375,247]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,2,2,2,2,2],"matrix_rows":[501,502,498,8,486,470,438,374,246],"offset":10,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,2,2,2,2,2]],["P",[501,502,498,8,486,470,438,374,246]],["X",10],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,3,3,3,3,2],"matrix_rows":[259,502,261,8,273,289,321,385,1],"offset":501,"phase":3,"quadratic_rows":[0,246,246,0,246,246,246,246,0]},"word":[["D",[0,246,246,0,246,246,246,246,0],[2,3,3,0,3,3,3,3,2]],["P",[259,502,261,8,273,289,321,385,1]],["X",501],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[501,502,499,8,487,471,439,375,247],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[501,502,499,8,487,471,439,375,247]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[501,502,499,8,487,471,439,375,247],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[501,502,499,8,487,471,439,375,247]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,2,2,2,2,2],"matrix_rows":[501,502,498,8,486,470,438,374,246],"offset":500,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,2,2,2,2,2]],["P",[501,502,498,8,486,470,438,374,246]],["X",500],["phase",2]]}},"orthogonal_transvections":[3,503],"port":86,"q":501}, + {"G_rows":[493,494,491,487,16,463,431,367,239],"K_word":[["P",[493,494,491,487,16,463,431,367,239]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]]],"Z_mask":495,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,0,1,1,1,2],"matrix_rows":[259,494,261,265,16,289,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"word":[["D",[0,238,238,238,0,238,238,238,0],[2,1,1,1,0,1,1,1,2]],["P",[259,494,261,265,16,289,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[493,494,491,487,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[493,494,491,487,16,463,431,367,239]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[493,494,491,487,16,463,431,367,239],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[493,494,491,487,16,463,431,367,239]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,0,2,2,2,2],"matrix_rows":[493,494,490,486,16,462,430,366,238],"offset":18,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,0,2,2,2,2]],["P",[493,494,490,486,16,462,430,366,238]],["X",18],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,0,3,3,3,2],"matrix_rows":[259,494,261,265,16,289,321,385,1],"offset":493,"phase":3,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"word":[["D",[0,238,238,238,0,238,238,238,0],[2,3,3,3,0,3,3,3,2]],["P",[259,494,261,265,16,289,321,385,1]],["X",493],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[493,494,491,487,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[493,494,491,487,16,463,431,367,239]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[493,494,491,487,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[493,494,491,487,16,463,431,367,239]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,0,2,2,2,2],"matrix_rows":[493,494,490,486,16,462,430,366,238],"offset":492,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,0,2,2,2,2]],["P",[493,494,490,486,16,462,430,366,238]],["X",492],["phase",2]]}},"orthogonal_transvections":[3,495],"port":87,"q":493}, + {"G_rows":[477,478,475,471,463,32,415,351,223],"K_word":[["P",[477,478,475,471,463,32,415,351,223]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]]],"Z_mask":479,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,0,1,1,2],"matrix_rows":[259,478,261,265,273,32,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"word":[["D",[0,222,222,222,222,0,222,222,0],[2,1,1,1,1,0,1,1,2]],["P",[259,478,261,265,273,32,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[477,478,475,471,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[477,478,475,471,463,32,415,351,223]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[477,478,475,471,463,32,415,351,223],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[477,478,475,471,463,32,415,351,223]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,0,2,2,2],"matrix_rows":[477,478,474,470,462,32,414,350,222],"offset":34,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,0,2,2,2]],["P",[477,478,474,470,462,32,414,350,222]],["X",34],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,0,3,3,2],"matrix_rows":[259,478,261,265,273,32,321,385,1],"offset":477,"phase":3,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"word":[["D",[0,222,222,222,222,0,222,222,0],[2,3,3,3,3,0,3,3,2]],["P",[259,478,261,265,273,32,321,385,1]],["X",477],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[477,478,475,471,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[477,478,475,471,463,32,415,351,223]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[477,478,475,471,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[477,478,475,471,463,32,415,351,223]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,0,2,2,2],"matrix_rows":[477,478,474,470,462,32,414,350,222],"offset":476,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,0,2,2,2]],["P",[477,478,474,470,462,32,414,350,222]],["X",476],["phase",2]]}},"orthogonal_transvections":[3,479],"port":88,"q":477}, + {"G_rows":[445,446,443,439,431,415,64,319,191],"K_word":[["P",[445,446,443,439,431,415,64,319,191]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]]],"Z_mask":447,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,0,1,2],"matrix_rows":[259,446,261,265,273,289,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,1,1,1,1,1,0,1,2]],["P",[259,446,261,265,273,289,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[445,446,443,439,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[445,446,443,439,431,415,64,319,191]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[445,446,443,439,431,415,64,319,191],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[445,446,443,439,431,415,64,319,191]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,0,2,2],"matrix_rows":[445,446,442,438,430,414,64,318,190],"offset":66,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,0,2,2]],["P",[445,446,442,438,430,414,64,318,190]],["X",66],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,0,3,2],"matrix_rows":[259,446,261,265,273,289,64,385,1],"offset":445,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,3,3,3,3,3,0,3,2]],["P",[259,446,261,265,273,289,64,385,1]],["X",445],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[445,446,443,439,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[445,446,443,439,431,415,64,319,191]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[445,446,443,439,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[445,446,443,439,431,415,64,319,191]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,0,2,2],"matrix_rows":[445,446,442,438,430,414,64,318,190],"offset":444,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,0,2,2]],["P",[445,446,442,438,430,414,64,318,190]],["X",444],["phase",2]]}},"orthogonal_transvections":[3,447],"port":89,"q":445}, + {"G_rows":[381,382,379,375,367,351,319,128,127],"K_word":[["P",[381,382,379,375,367,351,319,128,127]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]]],"Z_mask":383,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,0,2],"matrix_rows":[259,382,261,265,273,289,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,0,2]],["P",[259,382,261,265,273,289,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[381,382,379,375,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[381,382,379,375,367,351,319,128,127]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[381,382,379,375,367,351,319,128,127],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[381,382,379,375,367,351,319,128,127]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[381,382,378,374,366,350,318,128,126],"offset":130,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[381,382,378,374,366,350,318,128,126]],["X",130],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,0,2],"matrix_rows":[259,382,261,265,273,289,321,128,1],"offset":381,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,0,2]],["P",[259,382,261,265,273,289,321,128,1]],["X",381],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[381,382,379,375,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[381,382,379,375,367,351,319,128,127]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[381,382,379,375,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[381,382,379,375,367,351,319,128,127]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[381,382,378,374,366,350,318,128,126],"offset":380,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[381,382,378,374,366,350,318,128,126]],["X",380],["phase",2]]}},"orthogonal_transvections":[3,383],"port":90,"q":381}, + {"G_rows":[253,254,251,247,239,223,191,127,256],"K_word":[["P",[253,254,251,247,239,223,191,127,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]]],"Z_mask":255,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,2,0],"matrix_rows":[131,254,133,137,145,161,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,2,0]],["P",[131,254,133,137,145,161,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[253,254,251,247,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[253,254,251,247,239,223,191,127,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[253,254,251,247,239,223,191,127,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[253,254,251,247,239,223,191,127,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[253,254,250,246,238,222,190,126,256],"offset":258,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[253,254,250,246,238,222,190,126,256]],["X",258],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,2,0],"matrix_rows":[131,254,133,137,145,161,193,1,256],"offset":253,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,2,0]],["P",[131,254,133,137,145,161,193,1,256]],["X",253],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[253,254,251,247,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[253,254,251,247,239,223,191,127,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[253,254,251,247,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[253,254,251,247,239,223,191,127,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[253,254,250,246,238,222,190,126,256],"offset":252,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[253,254,250,246,238,222,190,126,256]],["X",252],["phase",2]]}},"orthogonal_transvections":[3,255],"port":91,"q":253}, + {"G_rows":[499,501,502,8,487,471,439,375,247],"K_word":[["P",[499,501,502,8,487,471,439,375,247]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]]],"Z_mask":503,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,0,1,1,1,1,2],"matrix_rows":[261,259,502,8,273,289,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,246,246,0,246,246,246,246,0]},"word":[["D",[0,246,246,0,246,246,246,246,0],[2,1,1,0,1,1,1,1,2]],["P",[261,259,502,8,273,289,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[499,501,502,8,487,471,439,375,247],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[499,501,502,8,487,471,439,375,247]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[499,501,502,8,487,471,439,375,247],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[499,501,502,8,487,471,439,375,247]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,0,2,2,2,2,2],"matrix_rows":[499,500,502,8,486,470,438,374,246],"offset":12,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,2,2,2,2,2]],["P",[499,500,502,8,486,470,438,374,246]],["X",12],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,0,3,3,3,3,2],"matrix_rows":[261,259,502,8,273,289,321,385,1],"offset":499,"phase":3,"quadratic_rows":[0,246,246,0,246,246,246,246,0]},"word":[["D",[0,246,246,0,246,246,246,246,0],[2,3,3,0,3,3,3,3,2]],["P",[261,259,502,8,273,289,321,385,1]],["X",499],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[499,501,502,8,487,471,439,375,247],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[499,501,502,8,487,471,439,375,247]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,0,2,2,2,2,2],"matrix_rows":[499,501,502,8,487,471,439,375,247],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,0,2,2,2,2,2]],["P",[499,501,502,8,487,471,439,375,247]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,0,2,2,2,2,2],"matrix_rows":[499,500,502,8,486,470,438,374,246],"offset":498,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,0,2,2,2,2,2]],["P",[499,500,502,8,486,470,438,374,246]],["X",498],["phase",2]]}},"orthogonal_transvections":[5,503],"port":92,"q":499}, + {"G_rows":[491,493,494,487,16,463,431,367,239],"K_word":[["P",[491,493,494,487,16,463,431,367,239]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]]],"Z_mask":495,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,0,1,1,1,2],"matrix_rows":[261,259,494,265,16,289,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"word":[["D",[0,238,238,238,0,238,238,238,0],[2,1,1,1,0,1,1,1,2]],["P",[261,259,494,265,16,289,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[491,493,494,487,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[491,493,494,487,16,463,431,367,239]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[491,493,494,487,16,463,431,367,239],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[491,493,494,487,16,463,431,367,239]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,0,2,2,2,2],"matrix_rows":[491,492,494,486,16,462,430,366,238],"offset":20,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,0,2,2,2,2]],["P",[491,492,494,486,16,462,430,366,238]],["X",20],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,0,3,3,3,2],"matrix_rows":[261,259,494,265,16,289,321,385,1],"offset":491,"phase":3,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"word":[["D",[0,238,238,238,0,238,238,238,0],[2,3,3,3,0,3,3,3,2]],["P",[261,259,494,265,16,289,321,385,1]],["X",491],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[491,493,494,487,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[491,493,494,487,16,463,431,367,239]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[491,493,494,487,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[491,493,494,487,16,463,431,367,239]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,0,2,2,2,2],"matrix_rows":[491,492,494,486,16,462,430,366,238],"offset":490,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,0,2,2,2,2]],["P",[491,492,494,486,16,462,430,366,238]],["X",490],["phase",2]]}},"orthogonal_transvections":[5,495],"port":93,"q":491}, + {"G_rows":[475,477,478,471,463,32,415,351,223],"K_word":[["P",[475,477,478,471,463,32,415,351,223]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]]],"Z_mask":479,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,0,1,1,2],"matrix_rows":[261,259,478,265,273,32,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"word":[["D",[0,222,222,222,222,0,222,222,0],[2,1,1,1,1,0,1,1,2]],["P",[261,259,478,265,273,32,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[475,477,478,471,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[475,477,478,471,463,32,415,351,223]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[475,477,478,471,463,32,415,351,223],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[475,477,478,471,463,32,415,351,223]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,0,2,2,2],"matrix_rows":[475,476,478,470,462,32,414,350,222],"offset":36,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,0,2,2,2]],["P",[475,476,478,470,462,32,414,350,222]],["X",36],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,0,3,3,2],"matrix_rows":[261,259,478,265,273,32,321,385,1],"offset":475,"phase":3,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"word":[["D",[0,222,222,222,222,0,222,222,0],[2,3,3,3,3,0,3,3,2]],["P",[261,259,478,265,273,32,321,385,1]],["X",475],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[475,477,478,471,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[475,477,478,471,463,32,415,351,223]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[475,477,478,471,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[475,477,478,471,463,32,415,351,223]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,0,2,2,2],"matrix_rows":[475,476,478,470,462,32,414,350,222],"offset":474,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,0,2,2,2]],["P",[475,476,478,470,462,32,414,350,222]],["X",474],["phase",2]]}},"orthogonal_transvections":[5,479],"port":94,"q":475}, + {"G_rows":[443,445,446,439,431,415,64,319,191],"K_word":[["P",[443,445,446,439,431,415,64,319,191]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]]],"Z_mask":447,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,0,1,2],"matrix_rows":[261,259,446,265,273,289,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,1,1,1,1,1,0,1,2]],["P",[261,259,446,265,273,289,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[443,445,446,439,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[443,445,446,439,431,415,64,319,191]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[443,445,446,439,431,415,64,319,191],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[443,445,446,439,431,415,64,319,191]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,0,2,2],"matrix_rows":[443,444,446,438,430,414,64,318,190],"offset":68,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,0,2,2]],["P",[443,444,446,438,430,414,64,318,190]],["X",68],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,0,3,2],"matrix_rows":[261,259,446,265,273,289,64,385,1],"offset":443,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,3,3,3,3,3,0,3,2]],["P",[261,259,446,265,273,289,64,385,1]],["X",443],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[443,445,446,439,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[443,445,446,439,431,415,64,319,191]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[443,445,446,439,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[443,445,446,439,431,415,64,319,191]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,0,2,2],"matrix_rows":[443,444,446,438,430,414,64,318,190],"offset":442,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,0,2,2]],["P",[443,444,446,438,430,414,64,318,190]],["X",442],["phase",2]]}},"orthogonal_transvections":[5,447],"port":95,"q":443}, + {"G_rows":[379,381,382,375,367,351,319,128,127],"K_word":[["P",[379,381,382,375,367,351,319,128,127]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]]],"Z_mask":383,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,0,2],"matrix_rows":[261,259,382,265,273,289,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,0,2]],["P",[261,259,382,265,273,289,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[379,381,382,375,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[379,381,382,375,367,351,319,128,127]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[379,381,382,375,367,351,319,128,127],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[379,381,382,375,367,351,319,128,127]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[379,380,382,374,366,350,318,128,126],"offset":132,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[379,380,382,374,366,350,318,128,126]],["X",132],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,0,2],"matrix_rows":[261,259,382,265,273,289,321,128,1],"offset":379,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,0,2]],["P",[261,259,382,265,273,289,321,128,1]],["X",379],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[379,381,382,375,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[379,381,382,375,367,351,319,128,127]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[379,381,382,375,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[379,381,382,375,367,351,319,128,127]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[379,380,382,374,366,350,318,128,126],"offset":378,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[379,380,382,374,366,350,318,128,126]],["X",378],["phase",2]]}},"orthogonal_transvections":[5,383],"port":96,"q":379}, + {"G_rows":[251,253,254,247,239,223,191,127,256],"K_word":[["P",[251,253,254,247,239,223,191,127,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]]],"Z_mask":255,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,2,0],"matrix_rows":[133,131,254,137,145,161,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,2,0]],["P",[133,131,254,137,145,161,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[251,253,254,247,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[251,253,254,247,239,223,191,127,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[251,253,254,247,239,223,191,127,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[251,253,254,247,239,223,191,127,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[251,252,254,246,238,222,190,126,256],"offset":260,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[251,252,254,246,238,222,190,126,256]],["X",260],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,2,0],"matrix_rows":[133,131,254,137,145,161,193,1,256],"offset":251,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,2,0]],["P",[133,131,254,137,145,161,193,1,256]],["X",251],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[251,253,254,247,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[251,253,254,247,239,223,191,127,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[251,253,254,247,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[251,253,254,247,239,223,191,127,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[251,252,254,246,238,222,190,126,256],"offset":250,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[251,252,254,246,238,222,190,126,256]],["X",250],["phase",2]]}},"orthogonal_transvections":[5,255],"port":97,"q":251}, + {"G_rows":[487,493,491,494,16,463,431,367,239],"K_word":[["P",[487,493,491,494,16,463,431,367,239]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]]],"Z_mask":495,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,0,1,1,1,2],"matrix_rows":[265,259,261,494,16,289,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"word":[["D",[0,238,238,238,0,238,238,238,0],[2,1,1,1,0,1,1,1,2]],["P",[265,259,261,494,16,289,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[487,493,491,494,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[487,493,491,494,16,463,431,367,239]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[487,493,491,494,16,463,431,367,239],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[487,493,491,494,16,463,431,367,239]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,0,2,2,2,2],"matrix_rows":[487,492,490,494,16,462,430,366,238],"offset":24,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,0,2,2,2,2]],["P",[487,492,490,494,16,462,430,366,238]],["X",24],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,0,3,3,3,2],"matrix_rows":[265,259,261,494,16,289,321,385,1],"offset":487,"phase":3,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"word":[["D",[0,238,238,238,0,238,238,238,0],[2,3,3,3,0,3,3,3,2]],["P",[265,259,261,494,16,289,321,385,1]],["X",487],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[487,493,491,494,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[487,493,491,494,16,463,431,367,239]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,0,2,2,2,2],"matrix_rows":[487,493,491,494,16,463,431,367,239],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,0,2,2,2,2]],["P",[487,493,491,494,16,463,431,367,239]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,0,2,2,2,2],"matrix_rows":[487,492,490,494,16,462,430,366,238],"offset":486,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,0,2,2,2,2]],["P",[487,492,490,494,16,462,430,366,238]],["X",486],["phase",2]]}},"orthogonal_transvections":[9,495],"port":98,"q":487}, + {"G_rows":[471,477,475,478,463,32,415,351,223],"K_word":[["P",[471,477,475,478,463,32,415,351,223]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]]],"Z_mask":479,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,0,1,1,2],"matrix_rows":[265,259,261,478,273,32,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"word":[["D",[0,222,222,222,222,0,222,222,0],[2,1,1,1,1,0,1,1,2]],["P",[265,259,261,478,273,32,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[471,477,475,478,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[471,477,475,478,463,32,415,351,223]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[471,477,475,478,463,32,415,351,223],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[471,477,475,478,463,32,415,351,223]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,0,2,2,2],"matrix_rows":[471,476,474,478,462,32,414,350,222],"offset":40,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,0,2,2,2]],["P",[471,476,474,478,462,32,414,350,222]],["X",40],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,0,3,3,2],"matrix_rows":[265,259,261,478,273,32,321,385,1],"offset":471,"phase":3,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"word":[["D",[0,222,222,222,222,0,222,222,0],[2,3,3,3,3,0,3,3,2]],["P",[265,259,261,478,273,32,321,385,1]],["X",471],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[471,477,475,478,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[471,477,475,478,463,32,415,351,223]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[471,477,475,478,463,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[471,477,475,478,463,32,415,351,223]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,0,2,2,2],"matrix_rows":[471,476,474,478,462,32,414,350,222],"offset":470,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,0,2,2,2]],["P",[471,476,474,478,462,32,414,350,222]],["X",470],["phase",2]]}},"orthogonal_transvections":[9,479],"port":99,"q":471}, + {"G_rows":[439,445,443,446,431,415,64,319,191],"K_word":[["P",[439,445,443,446,431,415,64,319,191]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]]],"Z_mask":447,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,0,1,2],"matrix_rows":[265,259,261,446,273,289,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,1,1,1,1,1,0,1,2]],["P",[265,259,261,446,273,289,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[439,445,443,446,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[439,445,443,446,431,415,64,319,191]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[439,445,443,446,431,415,64,319,191],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[439,445,443,446,431,415,64,319,191]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,0,2,2],"matrix_rows":[439,444,442,446,430,414,64,318,190],"offset":72,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,0,2,2]],["P",[439,444,442,446,430,414,64,318,190]],["X",72],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,0,3,2],"matrix_rows":[265,259,261,446,273,289,64,385,1],"offset":439,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,3,3,3,3,3,0,3,2]],["P",[265,259,261,446,273,289,64,385,1]],["X",439],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[439,445,443,446,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[439,445,443,446,431,415,64,319,191]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[439,445,443,446,431,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[439,445,443,446,431,415,64,319,191]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,0,2,2],"matrix_rows":[439,444,442,446,430,414,64,318,190],"offset":438,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,0,2,2]],["P",[439,444,442,446,430,414,64,318,190]],["X",438],["phase",2]]}},"orthogonal_transvections":[9,447],"port":100,"q":439}, + {"G_rows":[375,381,379,382,367,351,319,128,127],"K_word":[["P",[375,381,379,382,367,351,319,128,127]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]]],"Z_mask":383,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,0,2],"matrix_rows":[265,259,261,382,273,289,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,0,2]],["P",[265,259,261,382,273,289,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[375,381,379,382,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[375,381,379,382,367,351,319,128,127]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[375,381,379,382,367,351,319,128,127],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[375,381,379,382,367,351,319,128,127]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[375,380,378,382,366,350,318,128,126],"offset":136,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[375,380,378,382,366,350,318,128,126]],["X",136],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,0,2],"matrix_rows":[265,259,261,382,273,289,321,128,1],"offset":375,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,0,2]],["P",[265,259,261,382,273,289,321,128,1]],["X",375],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[375,381,379,382,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[375,381,379,382,367,351,319,128,127]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[375,381,379,382,367,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[375,381,379,382,367,351,319,128,127]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[375,380,378,382,366,350,318,128,126],"offset":374,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[375,380,378,382,366,350,318,128,126]],["X",374],["phase",2]]}},"orthogonal_transvections":[9,383],"port":101,"q":375}, + {"G_rows":[247,253,251,254,239,223,191,127,256],"K_word":[["P",[247,253,251,254,239,223,191,127,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]]],"Z_mask":255,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,2,0],"matrix_rows":[137,131,133,254,145,161,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,2,0]],["P",[137,131,133,254,145,161,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[247,253,251,254,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[247,253,251,254,239,223,191,127,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[247,253,251,254,239,223,191,127,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[247,253,251,254,239,223,191,127,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[247,252,250,254,238,222,190,126,256],"offset":264,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[247,252,250,254,238,222,190,126,256]],["X",264],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,2,0],"matrix_rows":[137,131,133,254,145,161,193,1,256],"offset":247,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,2,0]],["P",[137,131,133,254,145,161,193,1,256]],["X",247],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[247,253,251,254,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[247,253,251,254,239,223,191,127,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[247,253,251,254,239,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[247,253,251,254,239,223,191,127,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[247,252,250,254,238,222,190,126,256],"offset":246,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[247,252,250,254,238,222,190,126,256]],["X",246],["phase",2]]}},"orthogonal_transvections":[9,255],"port":102,"q":247}, + {"G_rows":[463,477,475,471,478,32,415,351,223],"K_word":[["P",[463,477,475,471,478,32,415,351,223]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]]],"Z_mask":479,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,0,1,1,2],"matrix_rows":[273,259,261,265,478,32,321,385,1],"offset":0,"phase":3,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"word":[["D",[0,222,222,222,222,0,222,222,0],[2,1,1,1,1,0,1,1,2]],["P",[273,259,261,265,478,32,321,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[463,477,475,471,478,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[463,477,475,471,478,32,415,351,223]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[463,477,475,471,478,32,415,351,223],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[463,477,475,471,478,32,415,351,223]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,0,2,2,2],"matrix_rows":[463,476,474,470,478,32,414,350,222],"offset":48,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,0,2,2,2]],["P",[463,476,474,470,478,32,414,350,222]],["X",48],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,0,3,3,2],"matrix_rows":[273,259,261,265,478,32,321,385,1],"offset":463,"phase":3,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"word":[["D",[0,222,222,222,222,0,222,222,0],[2,3,3,3,3,0,3,3,2]],["P",[273,259,261,265,478,32,321,385,1]],["X",463],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[463,477,475,471,478,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[463,477,475,471,478,32,415,351,223]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,0,2,2,2],"matrix_rows":[463,477,475,471,478,32,415,351,223],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,0,2,2,2]],["P",[463,477,475,471,478,32,415,351,223]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,0,2,2,2],"matrix_rows":[463,476,474,470,478,32,414,350,222],"offset":462,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,0,2,2,2]],["P",[463,476,474,470,478,32,414,350,222]],["X",462],["phase",2]]}},"orthogonal_transvections":[17,479],"port":103,"q":463}, + {"G_rows":[431,445,443,439,446,415,64,319,191],"K_word":[["P",[431,445,443,439,446,415,64,319,191]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]]],"Z_mask":447,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,0,1,2],"matrix_rows":[273,259,261,265,446,289,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,1,1,1,1,1,0,1,2]],["P",[273,259,261,265,446,289,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[431,445,443,439,446,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[431,445,443,439,446,415,64,319,191]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[431,445,443,439,446,415,64,319,191],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[431,445,443,439,446,415,64,319,191]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,0,2,2],"matrix_rows":[431,444,442,438,446,414,64,318,190],"offset":80,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,0,2,2]],["P",[431,444,442,438,446,414,64,318,190]],["X",80],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,0,3,2],"matrix_rows":[273,259,261,265,446,289,64,385,1],"offset":431,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,3,3,3,3,3,0,3,2]],["P",[273,259,261,265,446,289,64,385,1]],["X",431],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[431,445,443,439,446,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[431,445,443,439,446,415,64,319,191]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[431,445,443,439,446,415,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[431,445,443,439,446,415,64,319,191]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,0,2,2],"matrix_rows":[431,444,442,438,446,414,64,318,190],"offset":430,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,0,2,2]],["P",[431,444,442,438,446,414,64,318,190]],["X",430],["phase",2]]}},"orthogonal_transvections":[17,447],"port":104,"q":431}, + {"G_rows":[367,381,379,375,382,351,319,128,127],"K_word":[["P",[367,381,379,375,382,351,319,128,127]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]]],"Z_mask":383,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,0,2],"matrix_rows":[273,259,261,265,382,289,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,0,2]],["P",[273,259,261,265,382,289,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[367,381,379,375,382,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[367,381,379,375,382,351,319,128,127]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[367,381,379,375,382,351,319,128,127],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[367,381,379,375,382,351,319,128,127]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[367,380,378,374,382,350,318,128,126],"offset":144,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[367,380,378,374,382,350,318,128,126]],["X",144],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,0,2],"matrix_rows":[273,259,261,265,382,289,321,128,1],"offset":367,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,0,2]],["P",[273,259,261,265,382,289,321,128,1]],["X",367],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[367,381,379,375,382,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[367,381,379,375,382,351,319,128,127]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[367,381,379,375,382,351,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[367,381,379,375,382,351,319,128,127]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[367,380,378,374,382,350,318,128,126],"offset":366,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[367,380,378,374,382,350,318,128,126]],["X",366],["phase",2]]}},"orthogonal_transvections":[17,383],"port":105,"q":367}, + {"G_rows":[239,253,251,247,254,223,191,127,256],"K_word":[["P",[239,253,251,247,254,223,191,127,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]]],"Z_mask":255,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,2,0],"matrix_rows":[145,131,133,137,254,161,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,2,0]],["P",[145,131,133,137,254,161,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[239,253,251,247,254,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[239,253,251,247,254,223,191,127,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[239,253,251,247,254,223,191,127,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[239,253,251,247,254,223,191,127,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[239,252,250,246,254,222,190,126,256],"offset":272,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[239,252,250,246,254,222,190,126,256]],["X",272],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,2,0],"matrix_rows":[145,131,133,137,254,161,193,1,256],"offset":239,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,2,0]],["P",[145,131,133,137,254,161,193,1,256]],["X",239],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[239,253,251,247,254,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[239,253,251,247,254,223,191,127,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[239,253,251,247,254,223,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[239,253,251,247,254,223,191,127,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[239,252,250,246,254,222,190,126,256],"offset":238,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[239,252,250,246,254,222,190,126,256]],["X",238],["phase",2]]}},"orthogonal_transvections":[17,255],"port":106,"q":239}, + {"G_rows":[415,445,443,439,431,446,64,319,191],"K_word":[["P",[415,445,443,439,431,446,64,319,191]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]]],"Z_mask":447,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,0,1,2],"matrix_rows":[289,259,261,265,273,446,64,385,1],"offset":0,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,1,1,1,1,1,0,1,2]],["P",[289,259,261,265,273,446,64,385,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[415,445,443,439,431,446,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[415,445,443,439,431,446,64,319,191]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[415,445,443,439,431,446,64,319,191],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[415,445,443,439,431,446,64,319,191]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,0,2,2],"matrix_rows":[415,444,442,438,430,446,64,318,190],"offset":96,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,0,2,2]],["P",[415,444,442,438,430,446,64,318,190]],["X",96],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,0,3,2],"matrix_rows":[289,259,261,265,273,446,64,385,1],"offset":415,"phase":3,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"word":[["D",[0,190,190,190,190,190,0,190,0],[2,3,3,3,3,3,0,3,2]],["P",[289,259,261,265,273,446,64,385,1]],["X",415],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[415,445,443,439,431,446,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[415,445,443,439,431,446,64,319,191]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,0,2,2],"matrix_rows":[415,445,443,439,431,446,64,319,191],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,0,2,2]],["P",[415,445,443,439,431,446,64,319,191]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,0,2,2],"matrix_rows":[415,444,442,438,430,446,64,318,190],"offset":414,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,0,2,2]],["P",[415,444,442,438,430,446,64,318,190]],["X",414],["phase",2]]}},"orthogonal_transvections":[33,447],"port":107,"q":415}, + {"G_rows":[351,381,379,375,367,382,319,128,127],"K_word":[["P",[351,381,379,375,367,382,319,128,127]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]]],"Z_mask":383,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,0,2],"matrix_rows":[289,259,261,265,273,382,321,128,1],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,0,2]],["P",[289,259,261,265,273,382,321,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[351,381,379,375,367,382,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[351,381,379,375,367,382,319,128,127]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[351,381,379,375,367,382,319,128,127],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[351,381,379,375,367,382,319,128,127]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[351,380,378,374,366,382,318,128,126],"offset":160,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[351,380,378,374,366,382,318,128,126]],["X",160],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,0,2],"matrix_rows":[289,259,261,265,273,382,321,128,1],"offset":351,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,0,2]],["P",[289,259,261,265,273,382,321,128,1]],["X",351],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[351,381,379,375,367,382,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[351,381,379,375,367,382,319,128,127]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[351,381,379,375,367,382,319,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[351,381,379,375,367,382,319,128,127]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[351,380,378,374,366,382,318,128,126],"offset":350,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[351,380,378,374,366,382,318,128,126]],["X",350],["phase",2]]}},"orthogonal_transvections":[33,383],"port":108,"q":351}, + {"G_rows":[223,253,251,247,239,254,191,127,256],"K_word":[["P",[223,253,251,247,239,254,191,127,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]]],"Z_mask":255,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,2,0],"matrix_rows":[161,131,133,137,145,254,193,1,256],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,2,0]],["P",[161,131,133,137,145,254,193,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[223,253,251,247,239,254,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[223,253,251,247,239,254,191,127,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[223,253,251,247,239,254,191,127,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[223,253,251,247,239,254,191,127,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[223,252,250,246,238,254,190,126,256],"offset":288,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[223,252,250,246,238,254,190,126,256]],["X",288],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,2,0],"matrix_rows":[161,131,133,137,145,254,193,1,256],"offset":223,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,2,0]],["P",[161,131,133,137,145,254,193,1,256]],["X",223],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[223,253,251,247,239,254,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[223,253,251,247,239,254,191,127,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[223,253,251,247,239,254,191,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[223,253,251,247,239,254,191,127,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[223,252,250,246,238,254,190,126,256],"offset":222,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[223,252,250,246,238,254,190,126,256]],["X",222],["phase",2]]}},"orthogonal_transvections":[33,255],"port":109,"q":223}, + {"G_rows":[319,381,379,375,367,351,382,128,127],"K_word":[["P",[319,381,379,375,367,351,382,128,127]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]]],"Z_mask":383,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,0,2],"matrix_rows":[321,259,261,265,273,289,382,128,1],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,0,2]],["P",[321,259,261,265,273,289,382,128,1]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[319,381,379,375,367,351,382,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[319,381,379,375,367,351,382,128,127]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[319,381,379,375,367,351,382,128,127],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[319,381,379,375,367,351,382,128,127]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[319,380,378,374,366,350,382,128,126],"offset":192,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[319,380,378,374,366,350,382,128,126]],["X",192],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,0,2],"matrix_rows":[321,259,261,265,273,289,382,128,1],"offset":319,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,0,2]],["P",[321,259,261,265,273,289,382,128,1]],["X",319],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[319,381,379,375,367,351,382,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[319,381,379,375,367,351,382,128,127]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,0,2],"matrix_rows":[319,381,379,375,367,351,382,128,127],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,0,2]],["P",[319,381,379,375,367,351,382,128,127]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,0,2],"matrix_rows":[319,380,378,374,366,350,382,128,126],"offset":318,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,0,2]],["P",[319,380,378,374,366,350,382,128,126]],["X",318],["phase",2]]}},"orthogonal_transvections":[65,383],"port":110,"q":319}, + {"G_rows":[191,253,251,247,239,223,254,127,256],"K_word":[["P",[191,253,251,247,239,223,254,127,256]],["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]]],"Z_mask":255,"compiled_wrappers":{"backward_input_X":{"recipe":{"linear_Z4":[2,1,1,1,1,1,1,2,0],"matrix_rows":[193,131,133,137,145,161,254,1,256],"offset":0,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,1,1,1,1,1,1,2,0]],["P",[193,131,133,137,145,161,254,1,256]],["X",0],["phase",3]]},"backward_input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[191,253,251,247,239,223,254,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[191,253,251,247,239,223,254,127,256]],["X",0],["phase",0]]},"backward_output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[191,253,251,247,239,223,254,127,256],"offset":511,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[191,253,251,247,239,223,254,127,256]],["X",511],["phase",0]]},"backward_output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[191,252,250,246,238,222,254,126,256],"offset":320,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[191,252,250,246,238,222,254,126,256]],["X",320],["phase",2]]},"input_X":{"recipe":{"linear_Z4":[2,3,3,3,3,3,3,2,0],"matrix_rows":[193,131,133,137,145,161,254,1,256],"offset":191,"phase":3,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"word":[["D",[0,126,126,126,126,126,126,0,0],[2,3,3,3,3,3,3,2,0]],["P",[193,131,133,137,145,161,254,1,256]],["X",191],["phase",3]]},"input_Y":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[191,253,251,247,239,223,254,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[191,253,251,247,239,223,254,127,256]],["X",0],["phase",0]]},"output_X":{"recipe":{"linear_Z4":[2,2,2,2,2,2,2,2,0],"matrix_rows":[191,253,251,247,239,223,254,127,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[2,2,2,2,2,2,2,2,0]],["P",[191,253,251,247,239,223,254,127,256]],["X",0],["phase",0]]},"output_Y":{"recipe":{"linear_Z4":[0,2,2,2,2,2,2,2,0],"matrix_rows":[191,252,250,246,238,222,254,126,256],"offset":190,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"word":[["D",[0,0,0,0,0,0,0,0,0],[0,2,2,2,2,2,2,2,0]],["P",[191,252,250,246,238,222,254,126,256]],["X",190],["phase",2]]}},"orthogonal_transvections":[65,255],"port":111,"q":191} + ], + "recoding_bill": {"forward_prefix_component_l1_upper":57,"forward_update_coefficient":"-1/4","inverse_output_prefix_component_l1_upper":"69/13","inverse_prefix_component_l1_upper":56,"inverse_update_coefficient":"-1/52","monomial_field_maps":224,"output_scaled_adds":448,"owned_fields":8,"owned_initial_clears":8,"owned_terminal_clears":8,"signed_mode_adds":448}, + "schema": "coded-native-real-normalizers/1", + "scope": "Exact physical central ABI and local gauges; not full-controller or multiplication admission.", + "source_payload_sha256": "cfcd36b40326d7a5815e1db5313444379b3fb756b27d5201c561574c085cc0dd", + "status": "PASS_CODED_NATIVE_REAL_NORMALIZERS" +} diff --git a/research/coded-native-caller/NOTICE b/research/coded-native-caller/NOTICE new file mode 100644 index 0000000000..985b6b1bc7 --- /dev/null +++ b/research/coded-native-caller/NOTICE @@ -0,0 +1,6 @@ +Coded native caller research +Apache-2.0. Prepared for Dillon with substantial OpenAI Codex assistance. + +Retained sources: Cao Yifan / intqwq, joint-helper/native-map round-three word and PR4610; Dugongue / mdumitrean, PR4929 center-free coded producer; Cinna Davis / 1337isnot1337, PR4694 center-free cache, PR4698 helper basis, PR4470 controller and cumulative construction; zxv, retained exact Clifford implementation and native/compiler lineage; Jacob Alan Sussman, mixed-target recursion. Preserve all original source-specific headers. See ORIGINS.json for exact byte origins and README.md for the new result and limits. + +The new contribution is the phase-correct commuting physical port normalization, its corrected coded raw-dual convention, and scoped caller analysis. Center deletion, code A, its spectrum and helper compensation are predecessor work. diff --git a/research/coded-native-caller/ORIGINS.json b/research/coded-native-caller/ORIGINS.json new file mode 100644 index 0000000000..e18a033d4d --- /dev/null +++ b/research/coded-native-caller/ORIGINS.json @@ -0,0 +1,30 @@ +[ + { + "path": "native-source.json.gz", + "source_path": "research/kappa-round3-warp-20261022/ACTUAL-WORD.json.gz", + "commit": "624de9dc66858af0945e5f8a0942488d62280d43", + "source_blob": "46d929df83817b85a5387bcdb9745e0627d6366e", + "sha256": "7679daa4ec6a40f56fc7f0202379a6f454310e94945aba4f48beaaaafb838d05" + }, + { + "path": "CODE.json", + "source_path": "research/native-center-free-code/CODE.json", + "commit": "361f5d4100640177d6a983dd2f336021c75bfd5e", + "source_blob": "03170f4a31f7a8a3db7228f1cd5a6fdcb32720ae", + "sha256": "8be7f3f073b7981ec91c6af43edff0ac8a89f4824ef6026ae758c287dd6c03d0" + }, + { + "path": "clifford_exact.py", + "source_path": "research/t74-native-fast/vendor/native/new/code/borrow/vendor/clifford/clifford_exact.py", + "commit": "624de9dc66858af0945e5f8a0942488d62280d43", + "source_blob": "166841a037f069249f6f7f6dedb89248812f59e2", + "sha256": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962" + }, + { + "path": "CONTROLLER.json", + "source_path": "research/joint-helper-lattice/CONTROLLER.json", + "commit": "624de9dc66858af0945e5f8a0942488d62280d43", + "source_blob": "49a2f0675819f9deeea27ed77be2c2b6ff2e87e5", + "sha256": "1f5d6aa267e4e66048818714b5d3b5eae17a58abe91d15deeaa34574f7391a5f" + } +] diff --git a/research/coded-native-caller/PHYSICAL.md b/research/coded-native-caller/PHYSICAL.md new file mode 100644 index 0000000000..da8837ba67 --- /dev/null +++ b/research/coded-native-caller/PHYSICAL.md @@ -0,0 +1,71 @@ +# Real physical normalizers for the coded producer + +This is local constructive research on canonical/pr4929, not a completed supplier or exponent claim. Source code and Gaussian conventions retain the original authors' credit. + +Let n=9 and let q be any of the source's 112 port vectors (weight 3 or 7). Let e0=1. Construct an orthogonal binary matrix G taking e0 to q. If q_0=0, use the orthogonal transvection T_(e0+q). If q_0=1, select j>0 with q_j=0 and use T_(ej+q) T_(e0+ej). Here T_v(x)=x+(v dot x)v; both v have even weight, hence T_v is orthogonal. Such j exists because q is not the all-ones vector. + +For row j of G put z_j=(wt(row_j G)-1)/2 modulo 2. Define K=Z_z P_G. It is a real signed permutation. The full Gaussian R has entries alpha*(-i)^wt(x+y), with alpha=(1+i)^9/2^9. Orthogonality gives + +wt(G^-1 d)-wt(d) = 2 z dot d (mod 4). + +Indeed the degree-two coefficients vanish modulo four because distinct columns of G^-1 have even dot product; the linear coefficient is the weight of that column minus one. Therefore K R K^-1=R exactly, including absolute phase. K also maps the central line to span(q), and its orthogonal complement to q-perp, at the canonical-frame Lagrangian level. All these statements tensor to every positive digit-column count. + +Let Q be the central C gate, D the product of the other eight C gates, so R=DQ. Let E_i and S_i be the actual retained entrance-line and exit-hyperplane frame operators. With the operator convention that rightmost applies first, use + +input X: E_i K_i Q^-1 +input Y: K_i +output X: K_i^-1 +output Y: D K_i^-1 S_i^-1. + +All four wrappers are monomial. Their Lagrangian incidences prove this for every port, and the scratch verifier checks exact tableaus and absolute phases at every one of the 112 source ports. With A from PR4929, define C_ij= A_ij K_i^-1 K_j. Then the full main endpoint is + +F = diag(D,D) [[I,0],[C Q^-1,I]]. + +C is a physically implementable fixed owner recoding: apply K_i to each owner, apply A among the owners at common physical coordinates, and apply K_i^-1. Its inverse uses A^-1=(A+12I)/13. Since each K_i is real orthogonal and A is real symmetric, C^T=C. Since K_i commutes with R, C commutes with R. The polynomial C^2+12C-13I=0 follows by similarity. The 408 independent helper jobs and every paid Gaussian child are unchanged. + +For the actual raw inverse transpose, F^-T=diag(D^-1,D^-1) [[I,-Q^-1 C],[0,I]], since Q,D are symmetric. Multiply both outputs by D^2, then conjugate the physical X bank by Q^2 (input Q^-2 and output Q^2). These are explicit monomial powers. The result is + +B = diag(D,D) [[I,-Q C],[0,I]]. + +The old source convention using Y-only Q^2 conjugation cannot simply be copied for noncommuting C. The X-only convention above is exact. + +For a prior code B0 commuting with the current D, set G(B0)=diag(B0,Q^-1 B0 Q). The following two constructive local identities hold without requiring C and Q to commute: + +(post X C) F (pre Y C) = G(C B0) F_standard G(B0)^-1, +(post X C^-1) B (pre Y C^-1) = G(C^-1 B0) B_standard G(B0)^-1. + +They use [C,DQ]=0 and [B0,D]=0. Every additional operation on the left is physically cheap fixed recoding. For disjoint fresh blocks, codes from earlier stages commute with the current D. These identities do not yet settle interstage ADD/IDLE compatibility, terminal gauges, productive jobs, or the complete moment. + +## Literal recoding and complete local bill + +The source code has an exact factorization A=I-MM^T/4 with M a 112-by-8 matrix having entries 0,+1,-1 and M^T M=56I. Each mode column has 56 nonzero entries, and each owner row has four. The mode columns are emitted in NORMALIZERS.json and all 12,544 entries are checked against the pinned CODE.json. This factorization is used here as a constructive scalar program, without relying on any common physical address chart for separate Gaussian mode transformations. + +To execute A on arbitrary independent owner fields x, allocate eight owned zero fields t. Compute t=M^T x with 448 signed ADDs; update x-=M t/4 with 448 scaled ADDs; clear the eight owned temporaries. Reading x is finished before any x is updated. Hence no input field is overwritten before its last source read. For A^-1 use the same program with coefficient -1/52, since A^-1=I-MM^T/52. Both are exact rational linear programs. The helper fields of the native producer are never used as scratch, copied as free credit, or erased. + +Conjugating this scalar program by the 112 K_i and their inverses implements C or C^-1. This pays 224 monomial field maps, 896 scalar ADDs and 16 owned CLEARs per recoding, with eight owned fields reusable sequentially. The two additional recodings in either local gauge identity therefore cost at most 448 monomial maps, 1,792 scalar ADDs and 32 CLEARs, with no recursive Gaussian child. The four actual port normalizers contribute 448 monomial maps per native invocation. The displayed backward conversion contributes at most 448 further monomial maps (112 input X powers, 112 output X powers and 224 output D-squares); fusing maps can reduce this upper bound but is not assumed. + +These are field-level operation counts. A lifted K_i is an explicit binary map on nine f-bit address blocks together with signs given by block parity. Its constants, indexed movement and phase passes use the retained native monomial implementation. It is therefore a fixed finite O(V polylog p) nonrecursive operation under that caller's precision/address ABI, not a zero-work instruction. Each fixed rational ADD is likewise charged at its actual scalar precision. In particular the inverse denominator 52 must be implemented and rounded; no free exact real-division oracle is assumed. This lemma makes no independent TM tariff or outer-budget claim. + +The maximum exact component-l1 prefix bound for the scalar A program, including its temporaries, is 57. For A^-1 it is 56 (the output-only bound is 69/13). Signed monomial maps preserve component magnitude. A fixed local sequence has a fixed suffix bound obtained by multiplying elementary bounds 1+|coefficient|; owned CLEAR has bound one. This gives a finite bound for local rounding propagation. The number of local uses, compiler precision and complete outer error allocation still belong to the caller theorem. + +The normalized producer still has its exact PR4929 paid profile + + {1:2201, 2:412, 3:510, 4:127, 5:40} + +and independent helper profile + + {4:28, 7:7, 8:47, 9:326}. + +No productive main ranks are asserted merely from the coupled central ABI. Those depend on the completed caller, its initial/final gauges and every paid correction. + +## Universal scope and reproducible evidence + +PR4929 supplies the arbitrary-input logical identity over Q[FreeGroup72] for its emitted center-free word with ground-chart helper pre-compensation. Its normalized main endpoint is L(A), its raw dual is L(A)^-T, and every one of the 408 helper endpoints is autonomous. This proof is an inherited premise with exact source pins, not a consequence of this normalizer checker. The present wrappers and owner recodings act exclusively on the 224 main fields; new scratch is explicitly owned. Thus the helper block remains autonomous and its independent inputs, requested transforms and paid profile remain unchanged. + +For every f>=1, assign the shared native letters their actual consistent invertible lifted operators. Evaluation of the source free-group algebra is a homomorphism and gives the source logical identity. Independently lift each K_i as its f-fold tensor product, retaining spectator coordinates; its signed-permutation word, the two direct frame identities and its commutation with R lift by operator composition. In every compiled monomial word, P and X act columnwise on the f-bit blocks, D sums its Z4 polynomial over the f columns, and a one-column scalar phase i^gamma becomes i^(f*gamma). Reusing the one-column global phase unchanged would be incorrect. Finally form the owner matrix C_f with entries A_ij K_i,f^-1 K_j,f. One does not tensor the whole 224-by-224 owner matrix and does not assert that tensor powers preserve sums. Instead the finite scalar owner program is evaluated directly in the algebra of these lifted address operators. This proves the central ABI and local gauge identities at every positive width. + +Run `python3 -I -B research/coded-native-caller/normalizers.py` or its optimized `-O` form. The checker authenticates the decompressed actual native payload, CODE.json and retained Clifford source before executing the latter. It verifies all 112 real signed normalizers, 57,344 explicit weight-congruence addresses, 896 forward/backward monomial wrappers and eight exact frame/block identities per port, including absolute phase. Each emitted wrapper is separately lowered to a literal P/D/X/phase-only word and checked against its defining expression by exact tableau and absolute-phase state. No C gate remains in an emitted wrapper. The independent incoming-column and outgoing-row identities imply all 5,824 nonzero off-diagonal code blocks, without sampling those pairs. It also executes the eight-mode recoding on all 112 arbitrary-input basis columns in both directions. Omitting the essential signed phase is rejected at every affected port. The default command compares a regenerated mathematical receipt and performs no writes; `--write` is the explicit authoring path. + +Source pins: canonical main 624de9dc66858af0945e5f8a0942488d62280d43, `research/kappa-round3-warp-20261022/ACTUAL-WORD.json.gz`, decompressed SHA-256 cfcd36b40326d7a5815e1db5313444379b3fb756b27d5201c561574c085cc0dd; PR4929 head 361f5d4100640177d6a983dd2f336021c75bfd5e, `research/native-center-free-code/CODE.json`, SHA-256 8be7f3f073b7981ec91c6af43edff0ac8a89f4824ef6026ae758c287dd6c03d0; canonical `research/t74-native-fast/vendor/native/new/code/borrow/vendor/clifford/clifford_exact.py`, SHA-256 2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962. Gzip container bytes are not substituted for decompressed source identity. + +Credit Dugongue's PR4929 for the coded producer and stable code; Cinna Davis's PR4694/4698 and the original cache/helper construction; Cao Yifan's PR4610 native word; the retained zxv, Jacob Alan Sussman, Cinna Davis and Clifford/native/compiler lineage. The exact canonical-frame implementation and phase conventions are retained source material. The constructive real centralizing normalizers, their explicit lifted words, X-only raw-dual convention and costed local code gauges are the additions here. New work is Apache-2.0 and has substantial OpenAI Codex assistance; no formal-kernel or independent human acceptance is asserted. diff --git a/research/coded-native-caller/README.md b/research/coded-native-caller/README.md new file mode 100644 index 0000000000..886bccc303 --- /dev/null +++ b/research/coded-native-caller/README.md @@ -0,0 +1,43 @@ +# A physical central-query interface for the center-free coded producer + +The new result is an exact, phase-correct common-query interface for the changed native producer of [PR4929](https://github.com/CrocSwap/integer-mult-bounds/pull/4929). It includes 896 compiled monomial wrappers, the corrected backward convention, a costed eight-mode owner recoding, and an emitted exact rational recipe for the entire p16 coded caller. This is a partial result toward turning 144 center-call deletions into a stronger recursive multiplication bound. **No complete profitable caller or improved κ is established.** + +For every positive fiber width, the forward main interface is `diag(D,D) L(C Q^-1)` and the backward interface is `diag(D,D) U(-Q C)`, where `C=K^-1(A tensor I)K`, `C^T=C`, and `[C,DQ]=0`. The signed-permutation normalizers `K_i` preserve the full Gaussian including absolute phase. The corrected backward convention conjugates X by the monomial `Q^2`; copying the old Y-only convention fails. The 408 independent helper jobs and paid profile `{1:2201,2:412,3:510,4:127,5:40}` are inherited unchanged from the pinned producer. + +[PHYSICAL.md](PHYSICAL.md) gives the all-width proof, literal wrapper words, independent-input and owned-storage contracts, and local bill. Each recoding uses eight owned temporary fields, 896 scalar ADDs, 224 monomial field maps and 16 CLEARs. Inverse recoding uses coefficient `-1/52`: its exact rational identity is checked, while native fixed-denominator rounding, full precision and tape costs remain caller obligations. Nonrecursive operations are charged work, not zero-cost instructions. + +[GAUGE.md](GAUGE.md) derives the entire coded caller from exact noncommuting local transport and already-paid IDLE identities. All 3,584 main inputs and 7,344 helper inputs remain independent. The 16 positive-query main banks have outputs `B_i D_i Q`, and the 16 negative-query banks have outputs `Q^-1 B_i D_i`; each bank contains 112 owners. Postdecoding the positive banks is explicitly priced. The negative banks remain coded jobs, so their old Gaussian rank rewards are not admitted. The recipe removes exactly 144 rank-eight children but does not close the recursive supplier contract. Its Q=1 noncommuting core replay is an independent binding of Dugongue's existing `frame-aware-native/noncommuting-controller` result, crediting Cinna Davis #4470 and Ryanson Jonathan #4516; it is not claimed as a new core theorem. + +[TERMINAL.md](TERMINAL.md) proves a useful scope gate: every one of the 5,824 nonzero blocks of a one-stage terminal `Q^-1 C Q` has exactly `4^f` support per row. Therefore it cannot be silently erased by a fixed finite monomial/scalar word uniformly in fiber width. This applies also to one `C^-1`; it does not exclude cancellation in products of codes, a paid decoder, or a different caller. + +## Reproduce + +From the repository root: + +```sh +python3.12 -B scripts/research_package.py --package research/coded-native-caller +python3.12 -I -O -B research/coded-native-caller/verify.py +python3.12 -B scripts/check_research_commit.py --package research/coded-native-caller --check-source-history +``` + +The standard-library replay is read-only. It checks exact phase/tableau identities, compiled Gaussian-free words, all source code entries through an eight-mode factorization, all symbolic local identities and the source-bound caller checks. The separate [independent.py](independent.py) uses no Clifford evaluator and checks deterministic vectors over F_65537, including rejection of the old backward convention. That finite check corroborates the written universal proof; it is not an all-size proof by sampling. See [REVIEW.md](REVIEW.md) and [VALIDATION.md](VALIDATION.md) for exact scope and executed checks. + +## Scope and selection + +The session began on canonical main `624de9dc66858af0945e5f8a0942488d62280d43`, after more than five minutes comparing high-impact avenues. The selected result was κ=0.00302015. A refreshed checkpoint at `cef4b52f2a59009865bf8eabde1be3f159063703` retained the same priorities and selection; PR4929 had merged at its unchanged source head. Frozen inputs remain at their original bytes. [Discussion4930](https://github.com/CrocSwap/integer-mult-bounds/discussions/4930) is the canonical investigation thread. [TASK.json](TASK.json) records selection, overlap coverage and stopping criteria. + +The unchanged-target planning model with 144 rank-eight children deleted crosses near 0.00765. This motivated the risky construction attempt; it is not a result or an admissible invoice. No old fixed-inventory ceiling is applied to this changed interface, and the selected frontier is unchanged. No Lean/kernel acceptance, full multiplier implementation, or full selected cold replay is claimed. + +## Open next questions + +- Admit or convert the 16 negative-query coded output banks, including their terminal code maps. Begin with one emitted paid-IDLE/negative-output pair and charge every additional query before expanding the construction. +- Prove a typed recursive product for coded jobs if codes are to survive recursion. The current compiler restores each matched Gaussian job before resuming its suspended parent; leaving an owner-mixing code in that slot is not automatically legal. Show one chronological child substitution and its next scalar/warp contact with all arbitrary inputs retained. +- Implement and budget fixed-denominator recoding, finite precision, indexed movement and outer recovery for whichever complete caller survives. Local operator identities do not discharge these obligations. + +The structured questions and first tests are in [TASK.json](TASK.json). + +## Credit + +Dugongue / mdumitrean supplies PR4929's center-free coded producer, explicit A and conditioning; Cinna Davis / 1337isnot1337 supplies the earlier PR4694 cache, PR4698 helper basis and PR4470 controller; Cao Yifan / intqwq supplies the round-three joint-helper/native-map word and PR4610. Retain zxv's Clifford/native/compiler work, Jacob Alan Sussman's mixed-target recursion, Ryanson Jonathan's controller checks, and the full source lineage. Center deletion and the code spectrum are not new here. Exact source bytes and origins are recorded in [ORIGINS.json](ORIGINS.json) and [SOURCES.json](SOURCES.json). + +The new contribution is the phase-correct commuting normalization, its coded raw-dual convention, costed whole rational coded-caller recipe and actual terminal support gate. Prepared for Dillon with substantial OpenAI Codex assistance from the lead and parallel research/review agents. Apache-2.0; no independent human review claimed. diff --git a/research/coded-native-caller/REVIEW.md b/research/coded-native-caller/REVIEW.md new file mode 100644 index 0000000000..bb1ec37408 --- /dev/null +++ b/research/coded-native-caller/REVIEW.md @@ -0,0 +1,67 @@ +# Independent agent review of the physical adapter + +Reviewed by a separate OpenAI Codex agent. This is neither independent human +acceptance nor a formal proof-kernel audit. The review covers PHYSICAL.md, +normalizers.py and the emitted normalizer receipt, with PR4929's frozen producer +theorem retained as a premise. + +## Findings + +The initial receipt displayed Gaussian-containing expressions for wrappers whose +operators were monomial. That was an implementation presentation gap: executing +those expressions literally would not justify the stated Gaussian-free wrapper +bill. The revised receipt emits all 896 wrappers as P/D/X/phase words. The main +checker separately compares each compiled word with its defining expression, +including absolute phase. The independent finite checker rejects any other +opcode in those emitted words. + +No mathematical counterexample was found to the scoped local adapter theorem. +In particular: + +* Binary orthogonality alone is insufficient. The stated row-weight sign makes + the full Gaussian commute with K exactly. The explicit mod-four weight identity + controls the kernel's phase, not merely its Lagrangian or rank. +* At width f, the owner code is + `C_f = diag(K_i,f)^-1 (A tensor I) diag(K_i,f)` with + `K_i,f = K_i tensor ... tensor K_i`. The owner matrix A is applied once. + This directly preserves the quadratic polynomial and code inverse; tensoring + the entire one-column owner operator would be a different construction. +* For `F = diag(D,D) L(C Q^-1)`, symmetry of C, D and Q gives + `F^-T = diag(D^-1,D^-1) U(-Q^-1 C)`. Output D-squares followed by X-only + Q-squared conjugation yields `diag(D,D) U(-Q C)` in that order. No commutation + between C and Q is needed. The older Y-only convention fails for the actual + supplied code in the independent finite control. +* The eight owned mode fields hold all source sums before main fields are + updated. They therefore do not require erasing or aliasing any of the 408 + arbitrary helper inputs. The inverse coefficient is exactly -1/52; its + denominator and finite-precision implementation remain visible obligations. + +## Separate bounded evidence + +`independent.py` imports no retained Clifford implementation. It interprets the +actual signed binary permutations, rational owner matrix and Gaussian pair gates +over the prime field of order 65537, with 256 representing i. Two deterministic +112-owner banks contain 512 addresses per owner. It checks the signed-map and +code inverses, commutation with DQ, noncommutation with Q, the X-only raw-dual +conversion, and rejection of the old Y-only conversion. It also checks the +Gaussian-free opcode alphabet of all 896 emitted wrappers. The default command +is read-only and compares INDEPENDENT.json; every substantive check remains +active under Python `-O`. + +These finite checks corroborate the proof and catch concrete order/phase errors; +they are not exhaustive tests on every input and do not establish the universal +claim by themselves. They do not replay PR4929's native word or independently +verify the inherited 632-input producer theorem. + +## Remaining obligations + +The local adapter does not establish the complete controller endpoint, resolve +the unmatched middle junction and terminal gauges, or certify a favorable whole +moment. Fixed rational arithmetic still needs its caller's actual precision and +machine-cost implementation. Supplier admission, recursive precision closure +and outer multiplication recovery remain outside this package's result. + +Credit remains with Dugongue's PR4929, Cinna Davis's cache/helper work, Cao Yifan's +native word, and the retained Clifford, compiler and controller contributors. + +After this local review, a separate research agent completed the exact rational typed p16 caller in GAUGE.md; another agent independently checked its global conjugation and boundary-parity argument. The earlier local review does not claim that the coded negative-half outputs are admitted Gaussian jobs. The middle-junction concern of the initial per-pair proof is superseded by that whole-word proof. diff --git a/research/coded-native-caller/SOURCES.json b/research/coded-native-caller/SOURCES.json new file mode 100644 index 0000000000..67b54db4a4 --- /dev/null +++ b/research/coded-native-caller/SOURCES.json @@ -0,0 +1,53 @@ +{ + "schema_version": 1, + "base_commit": "624de9dc66858af0945e5f8a0942488d62280d43", + "files": [ + { + "path": "certificates/selected-result.json", + "usage": "provenance", + "git_blob": "c35482cd9035843b15a634cc8276a7e1e40e8395", + "sha256": "6fe0a099b89aa2aed796a13c3a21dafc63f3388ebf397464e44e0451893b9375" + }, + { + "path": "docs/research/agent-task-catalog.json", + "usage": "provenance", + "git_blob": "f126dd2e2dad2b669e75d1d0d0bd05c600725602", + "sha256": "f7a48bfa2659b88378282a8eee7d9fe52cdf505594124c4d1686b58510fffd72" + }, + { + "path": "research/coded-native-caller/native-source.json.gz", + "usage": "input", + "pin": "head:c4dd638a8323db62e4bf154e16edb277681d2015:research/coded-native-caller/native-source.json.gz", + "git_blob": "46d929df83817b85a5387bcdb9745e0627d6366e", + "sha256": "7679daa4ec6a40f56fc7f0202379a6f454310e94945aba4f48beaaaafb838d05" + }, + { + "path": "research/coded-native-caller/CODE.json", + "usage": "input", + "pin": "head:c4dd638a8323db62e4bf154e16edb277681d2015:research/coded-native-caller/CODE.json", + "git_blob": "03170f4a31f7a8a3db7228f1cd5a6fdcb32720ae", + "sha256": "8be7f3f073b7981ec91c6af43edff0ac8a89f4824ef6026ae758c287dd6c03d0" + }, + { + "path": "research/coded-native-caller/clifford_exact.py", + "usage": "input", + "pin": "head:c4dd638a8323db62e4bf154e16edb277681d2015:research/coded-native-caller/clifford_exact.py", + "git_blob": "166841a037f069249f6f7f6dedb89248812f59e2", + "sha256": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962" + }, + { + "path": "research/coded-native-caller/CONTROLLER.json", + "usage": "input", + "pin": "head:c4dd638a8323db62e4bf154e16edb277681d2015:research/coded-native-caller/CONTROLLER.json", + "git_blob": "49a2f0675819f9deeea27ed77be2c2b6ff2e87e5", + "sha256": "1f5d6aa267e4e66048818714b5d3b5eae17a58abe91d15deeaa34574f7391a5f" + }, + { + "path": "research/coded-native-caller/ORIGINS.json", + "usage": "input", + "pin": "head:c4dd638a8323db62e4bf154e16edb277681d2015:research/coded-native-caller/ORIGINS.json", + "git_blob": "e18a033d4de1d997f55e84d1535fc6cde20424c4", + "sha256": "10cf47173ca238c32adb923daae7c1137c2e9c86c7066301d68fc74442b3f4d7" + } + ] +} diff --git a/research/coded-native-caller/TASK.json b/research/coded-native-caller/TASK.json new file mode 100644 index 0000000000..a1bd5dfd6e --- /dev/null +++ b/research/coded-native-caller/TASK.json @@ -0,0 +1,105 @@ +{ + "schema_version": 1, + "task_id": "centre-path-sharing", + "priority_revision": 7, + "base_commit": "624de9dc66858af0945e5f8a0942488d62280d43", + "original_card": { + "id": "centre-path-sharing", + "question": "Can the 64-per-call centre path (eight rank-8 COPY/ERASE totals through the private temporary) be shared across calls or shrunk?", + "starting_points": [ + "docs/research/research-family-status.md", + "research/complex-local-word-ceiling/README.md", + "research/split-centres-global/proofs/PR386-BIT-GEOMETRY.txt", + "certificates/selected-result.json" + ], + "methods": [ + "Derive a fully charged favorable relaxation for sharing one centre path across k calls, including restoration, hosting and precision.", + "Prove a lower bound on copied information per call for the selected decoder contract." + ], + "acceptance_gate": "Show the changed centre charge and copy profile per call with every added restoration or hosting cost charged, and its ceiling via ceiling.ceiling(centre=...). A scoped local result may be retained without a complete supplier. Expanding it into further construction rounds requires the family-level budget and obligation gate in research-family-status.md; an optimistic passing relaxation alone is not acceptance.", + "first_step": { + "command": [ + "python3", + "-B", + "research/complex-local-word-ceiling/verify.py" + ], + "expected": "PASS_COMPLEX_LOCAL_WORD_CEILING", + "inspect": "Read the selected word's per-call local profile, its packing ceiling and the lever table; run levers.py for the ideal budget of the lever you target.", + "scope": "Positive control and planning budget only; this is not a new construction or full cold replay." + }, + "first_experiment": "Write the per-call centre charge and copy children for sharing across k = 2 calls, charge the sharing overhead, and screen it; stop this route if even the ideal sharing gains under 10%. Ideal budgets: free 2.80x, shared by two 1.90x (levers.py).", + "bottleneck_link": "The centre path consumes 64 of about 99.6 unpaid coordinates per call, i.e. about 64% of the raw deficit.", + "allowed_variations": [ + "One sharing pattern across a fixed number of calls.", + "One reduced copied-total contract for the existing decoder.", + "If the coverage law, template or guard changes, derive an applicable fully charged replacement bound instead of applying the incumbent ceiling outside its scope." + ], + "scope_change_triggers": [ + "Removing copies without a replacement contract for the decoder's copied totals.", + "Continuing a partial cost improvement while leaving the same unpriced consumer, restoration or central-readout obligation unresolved; refresh the family expansion decision first. Local product-retiming evidence has a narrow scope and is not a ban on changed graphs or contracts." + ], + "overlap_terms": [ + "centre path", + "copied totals", + "private temporary", + "shared centre", + "batching" + ] + }, + "scope_status": "changed", + "actual_scope": "Construct a physical central-query ABI and emit the full exact rational coded p16 caller for PR4929; determine the remaining Gaussian-supplier interface.", + "scope_change_reason": "Handoff-first selection of the freshly emitted center-free coded producer, following the donor request for a high-impact risky construction. The historical fixed-word ceiling and its default replay do not apply to this changed producer/caller interface.", + "bottleneck_link": "A complete caller could delete 144 rank-eight center children across 18 FULLs. The local physical code interface removes a real integration obstacle, but its caller boundaries remain unpaid; no improved exponent follows.", + "budget_minutes": 60, + "stop_rule": "Spend at least five minutes selecting the research topic; stop new research at 02:14 UTC, retain a checked local result if whole-caller closure is unresolved, and use the final quarter for verification and handoff.", + "outcome": "partial", + "evidence": "Exact phase-correct normalizers at all112ports;896compiled Gaussian-free wrappers; universal owner-once lift; exact whole p16 coded recipe with3584independent main inputs and7344helpers,194code evaluations and144rank-eight children removed. Positivehalf postdecode97evaluations; negativehalf coded jobs are not admitted Gaussian rewards. All5824one-stage terminal support blocks checked.", + "author": "Dillon, with substantial OpenAI Codex assistance", + "ai_assistance": "Substantial OpenAI Codex assistance from the lead agent and parallel research/review agents; no independent human review or proof-kernel acceptance claimed.", + "open_questions": [ + { + "question": "Can the16explicit negative-query coded outputs be admitted together with their15matched paid IDLE types, or decoded at a favorable full cost?", + "why_it_matters": "The whole coded caller now exists, but these are not the Gaussian jobs required by the current recursive supplier.", + "first_step": "Write a typed completion identity for one emitted paid-IDLE/negative-output pair, with its exact arbitrary-input map, every paid query and returned parent state.", + "blocked_by": "One-stage terminal Q^-1 C Q has4^f support per block; whole stage products and typed recursive closure require a separate argument." + }, + { + "question": "Can a recursively coded job family carry the remaining endpoint code without paying a decoder at each invocation?", + "why_it_matters": "A changed recursive interface may avoid the per-call center reconstruction cost.", + "first_step": "Use the actual suspended-parent product substitution: return one coded child at column count r, then check its next native warp and scalar ADD, including the rank-r central query debt.", + "blocked_by": "Plain Gaussian children do not automatically close the proposed coded family. Nonuniform field operations, tensorization, denominator52 rounding and full compiler/outer accounting remain unproved." + } + ], + "session": { + "started_utc": "2026-10-23T01:29:32Z", + "selection_completed_utc": "2026-10-23T01:35:20Z", + "research_cutoff_utc": "2026-10-23T02:14:32Z", + "finish_target_utc": "2026-10-23T02:29:32Z", + "claim": "https://github.com/CrocSwap/integer-mult-bounds/discussions/4930" + }, + "checkpoints": [ + { + "utc": "2026-10-23T01:29:32Z", + "canonical_main": "624de9dc66858af0945e5f8a0942488d62280d43", + "priority_revision": 7, + "selected_kappa": "0.00302015", + "decision": "Start new isolated research from updated main; preserve earlier worktrees." + }, + { + "utc": "2026-10-23T02:05:35Z", + "canonical_main": "cef4b52f2a59009865bf8eabde1be3f159063703", + "priority_revision": 7, + "selected_kappa": "0.00302015", + "decision": "Continue frozen scientific inputs. PR4929 merged unchanged; startup guidance now explicitly routes sparse selected-baseline checks. No changed task priority or construction selection." + } + ], + "overlap": { + "initial_open_prs": 448, + "initial_discussion_records": 4001, + "final_open_prs": 303, + "final_discussion_records": 4003, + "final_pr_fetch": "2026-10-23T02:05:37Z", + "final_discussion_fetch": "2026-10-23T02:06:17Z", + "limits": "Sparse local package-note coverage is incomplete; remote pagination does not search arbitrary code diffs. Relevant sources and exact heads were read directly. The Q=1 noncommuting core is credited predecessor work, not a new theorem." + } +} diff --git a/research/coded-native-caller/TERMINAL.json b/research/coded-native-caller/TERMINAL.json new file mode 100644 index 0000000000..bc358b105e --- /dev/null +++ b/research/coded-native-caller/TERMINAL.json @@ -0,0 +1,42 @@ +{ + "add_count_lower_bound_from_support": "at least 2*f", + "code_sha256": "8be7f3f073b7981ec91c6af43edff0ac8a89f4824ef6026ae758c287dd6c03d0", + "controls": [ + "identity conjugation has support one", + "diagonal code mutation rejected" + ], + "exact_support_per_block_row_at_width_f": "4**f", + "exhaustive_512_column_blocks": [ + [ + 0, + 1 + ], + [ + 37, + 1 + ], + [ + 111, + 3 + ] + ], + "fixed_free_word_excluded": true, + "free_model": "Fixed finite word of scalar ADD/SCALE, monomial address maps, and owned COPY/CLEAR", + "gaussian_support_rank_histogram": { + "2": 5824 + }, + "nonzero_off_diagonal_blocks": 5824, + "orientations": [ + "C", + "C^{-1}=(C+12I)/13" + ], + "ports": 112, + "scope": "One source code C or its inverse; not a product of different stage codes", + "source_sha256": "7679daa4ec6a40f56fc7f0202379a6f454310e94945aba4f48beaaaafb838d05", + "unresolved": [ + "Products of stage codes may cancel", + "Paid terminal decoders", + "Changed caller or recursively coded job family", + "Selected exponent admission" + ] +} diff --git a/research/coded-native-caller/TERMINAL.md b/research/coded-native-caller/TERMINAL.md new file mode 100644 index 0000000000..213a172676 --- /dev/null +++ b/research/coded-native-caller/TERMINAL.md @@ -0,0 +1,74 @@ +# The one-stage terminal gauge has a real cost + +The physical normalizers make the coded supplier and its local gauge identities +constructive. They do not make the Y terminal gauge free. This note proves that +distinction for one actual source code, at every positive fiber width. It does +not prove the same statement for a product of different stage codes. + +Let `Q` be the Gaussian on the common central line, let `K_i` be the signed +orthogonal permutation taking that line to source port `q_i`, and put + +`C_ij = A_ij K_i^{-1} K_j`. + +The source code has exactly 5,824 nonzero entries, all off diagonal and equal to +`+1/2` or `-1/2`. Its 112 port vectors are distinct. Write a nonzero block's +monomial as `M = K_i^{-1} K_j`, with binary linear part `G`. Then + +`G e = G_i^{-1} q_j != e`, + +because `G_i e = q_i` and `q_i != q_j`. Also `G e != 0`. Thus `e` and `G e` +are independent binary vectors. This statement uses the actual source ports, +not just the polynomial satisfied by `A`. + +For one digit column, write the central Gaussian as +`Q = (1+i)/2 (I-i T_e)`, where `T_e` translates the address by `e`. If +`M |x> = s(x) |Gx>`, with `s(x)` in `{+1,-1}`, direct expansion gives + +`2 Q^{-1} M Q |x>` + +`= s(x)|Gx> - i s(x+e)|Gx+Ge> + i s(x)|Gx+e> + s(x+e)|Gx+Ge+e>`. + +The four destinations are distinct and every coefficient is nonzero. Every +column, and every row, therefore has exactly four nonzero entries. Equivalently +the Gaussian support rank is two. At fiber width `f`, the same native monomial +and Gaussian act as tensor powers on the digit columns. Each nonzero owner +block consequently has exactly `4^f` nonzero entries per row. The coefficient +`A_ij` is applied once to this block; this argument does not tensor the owner +code or replace a sum by a tensor product. + +The different input owners `j` are arbitrary and independent. Entries belonging +to different owners cannot cancel each other in the full operator. Hence the +single-code terminal operator `Q^{-1} C Q` has at least `4^f` input-coordinate +dependencies in each row that meets a nonzero block. + +The inverse code has the same obstruction: `C^{-1}=(C+12I)/13`, so every +off-diagonal block of `Q^{-1} C^{-1} Q` is precisely `1/13` times the block +just analyzed. The added diagonal identity cannot cancel an independent input +owner's off-diagonal block. + +A fixed finite word made from scalar ADD/SCALE, monomial address maps, and +owned COPY/CLEAR has uniformly bounded row support. Initially the support is +at most one. Monomial operations, scaling, copying and clearing do not increase +the maximum support; an ADD increases it by at most a factor two. A word with +`g` ADDs therefore has support at most `2^g`, even when clean scratch is allowed. +Realizing this terminal operator needs `g >= 2f`. In particular a fixed number +of those physical primitives cannot implement the one-stage decoder uniformly +in the fiber width. + +This is a statement about the repository's fixed native scalar/monomial word +model. It is not a general arithmetic-circuit lower bound, a lower bound for +paid Gaussian decoders, or an impossibility theorem for coded callers. It also +does not exclude cancellation in a product `B` of different stage codes. The +terminal gauge `Q^{-1} B Q` of a complete controller needs its own proof. + +The independent verifier reconstructs every binary normalizer from the frozen +ports without importing the primary normalizer implementation. It checks the +rank-two support argument for all 5,824 blocks, enumerates every one-column +row and column for three actual blocks, and rejects a diagonal-code mutation. +The identity-conjugation control has support one, so the support test does not +mistake the cancelling case for a rank-two case. + +Predecessor credit remains with Dugongue's PR #4929 coded producer, Cinna +Davis's center-free construction, Cao Yifan's native word, and the retained +native and controller contributors. The new result here is the exact terminal +support gate for the actual common-line normalizers. diff --git a/research/coded-native-caller/VALIDATION.md b/research/coded-native-caller/VALIDATION.md new file mode 100644 index 0000000000..e09684d8f9 --- /dev/null +++ b/research/coded-native-caller/VALIDATION.md @@ -0,0 +1,24 @@ +# Validation and limits + +Scientific inputs were frozen at canonical main `624de9dc66858af0945e5f8a0942488d62280d43` and PR4929 head `361f5d4100640177d6a983dd2f336021c75bfd5e`. The source-only commit is c4dd638a8323db62e4bf154e16edb277681d2015. A subsequent checkpoint found canonical main `cef4b52f2a59009865bf8eabde1be3f159063703`, unchanged selection/priorities and PR4929 merged at the same head. Source pins are preserved. + +Executed during research: + +- Exact normal and optimized replay of all 112phase-correct normalizers,896 compiled Gaussian-free wrappers and 896endpoint factor identities; 57,344 weight-congruence addresses, 224 scalar basis recodings, 112 omitted-phase and 112 absolute-phase controls. +- Symbolic noncommuting local/IDLE identities and all 1,024entries of the inherited p16 core; whole emitted rational caller, boundary parity and terminal-swap controls;194 code evaluations and 97 optional positive-output postdecode evaluations. +- Independent actual-source terminal support checks for all 5,824nonzero blocks, with exhaustive 512-address checks for three blocks and cancellation/diagonal-code controls. +- Separate-agent finite modular check over F_65537, two deterministic vectors across 112owners × 512 addresses, correct raw dual and rejection of the old Y-only correction. This corroborates the written universal proof; it is not a proof by sampling or independent human acceptance. +- Fresh source-bound PR4929 replay: extracted native_core.py,coded_verify.py,SOURCE-WORD.json.gz,CODED-WORDS.json.gz,CODE.json directly from the exact PR head; ran `python3 -I -O -B /tmp/integer-mult-coded-source-replay/coded_verify.py`. PASS_CENTER_FREE_CODED_SUPPLIER, all 632 arbitrary rows in both orientations, 28,045 events each, unchanged paid profile. This is a separate predecessor replay, not work newly attributed to this package; the published source command is `python3 -I -O -B research/native-center-free-code/coded_verify.py` at that head. +- `python3 -B scripts/research_selected_baseline.py` passed after materializing the 487 omitted selected inputs from exact HEAD bytes. This checks selected metadata/source bindings only. No selected cold replay was run. + +The exact wrapper theorem and rational coded endpoint are established at the scope of their written proofs. The native all-width source semantics, owned erasure and monomial implementation remain inherited hypotheses. Fixed-denominator 52/13 rounding, the negative-half coded recursive interface, precision/tape costs, compiler closure and outer recovery remain open. No new κ, independent human review, Lean/kernel acceptance or complete multiplication theorem is claimed. + +Final-quarter checks: + +- Registered Python 3.12.15 replay passed, including source and task metadata. The exact interpreter was `/tmp/integer-mult-resume-20261022/python312/python/bin/python3.12` (the shell does not provide a `python3.12` alias). +- Isolated optimized Python 3.14.7 replay passed: `python3 -I -O -B research/coded-native-caller/verify.py`. +- Two aggregate-launcher integration errors were found and fixed: normalize tuple/list representations through JSON before comparing the gauge receipt, and accept the terminal receipt's schema without requiring an absent status field. Component mathematics and its acceptance checks were unchanged. +- The generated normalizer receipt uses one JSON line per port for reviewable diffs. Its generator emits the same representation; validation compares parsed mathematical objects. Frozen predecessor CRLF bytes remain unchanged. +- Exact committed-byte and source-history preflight passed; the source-only pin remains a reachable ancestor after merging refreshed canonical main. + +Portable export verification is recorded in the publication handoff. No hosted CI pass is claimed by these local checks. diff --git a/research/coded-native-caller/VERIFY.json b/research/coded-native-caller/VERIFY.json new file mode 100644 index 0000000000..199d65a655 --- /dev/null +++ b/research/coded-native-caller/VERIFY.json @@ -0,0 +1,32 @@ +{ + "schema_version": 1, + "status": "ready", + "python": "3.12", + "requirements": [], + "inputs": [ + "research/coded-native-caller/native-source.json.gz", + "research/coded-native-caller/CODE.json", + "research/coded-native-caller/clifford_exact.py", + "research/coded-native-caller/CONTROLLER.json", + "research/coded-native-caller/ORIGINS.json", + "research/coded-native-caller/NORMALIZERS.json", + "research/coded-native-caller/GAUGE.json", + "research/coded-native-caller/TERMINAL.json", + "research/coded-native-caller/INDEPENDENT.json", + "research/coded-native-caller/normalizers.py", + "research/coded-native-caller/gauge.py", + "research/coded-native-caller/terminal.py", + "research/coded-native-caller/independent.py" + ], + "commands": [ + { + "argv": [ + "{python}", + "-B", + "{package}/verify.py" + ], + "timeout_seconds": 180, + "checks": "Exact compiled native normalizers, symbolic local transport, actual caller scope controls, universal terminal support witnesses and independent finite modular corroboration." + } + ] +} diff --git a/research/coded-native-caller/clifford_exact.py b/research/coded-native-caller/clifford_exact.py new file mode 100644 index 0000000000..166841a037 --- /dev/null +++ b/research/coded-native-caller/clifford_exact.py @@ -0,0 +1,149 @@ +"""Small exact Gaussian-dyadic Clifford compiler, independent of gx internals. +Paulis use i^p X^x Z^z. State vectors use integer Gaussian numerators / 2^d. +The tableau is supplemented by a literal circuit, so global phases are kept. +""" +from dataclasses import dataclass + +def parity(x):return x.bit_count()&1 +def rank(rows): + p={} + for x in rows: + while x: + b=x.bit_length()-1 + if b not in p:p[b]=x;break + x^=p[b] + return len(p) +def transpose(rows,n):return tuple(sum(((rows[j]>>i)&1)<>j&1);a[j],a[k]=a[k],a[j] + for i in range(n): + if i!=j and a[i]>>j&1:a[i]^=a[j] + assert [r&((1<>n for r in a) +def basis_extend(cols,n): + out=[] + for x in list(cols)+[1<len(out):out.append(x) + assert len(out)==n + return tuple(out) +def nullspace(rows,n): + a=list(rows);p=[];k=0 + for j in range(n): + t=next((i for i in range(k,len(a)) if a[i]>>j&1),None) + if t is None:continue + a[t],a[k]=a[k],a[t] + for i in range(len(a)): + if i!=k and a[i]>>j&1:a[i]^=a[k] + p.append(j);k+=1 + return tuple((1<>j)&1)<>i&1:out=pmul(out,T[i]) + for i in range(n): + if z>>i&1:out=pmul(out,T[n+i]) + return out +def compose(A,B):return tuple(apply(A,p) for p in B) +def inverse(T): + n=len(T)//2;cols=[x|(z<>n;u,v,p=apply(T,(x,z,0));assert (u,v)==identity(n)[j][:2];out.append((x,z,(-p)%4)) + return tuple(out) +def qvalue(Q,alpha,x,n): + return (sum(alpha[i] for i in range(n) if x>>i&1)+2*sum(parity((Q[i]>>(i+1))&(x>>(i+1))) for i in range(n) if x>>i&1))%4 +def mul_i(a,p): + x,y=a;p%=4 + return [(x,y),(-y,x),(-x,-y),(y,-x)][p] +@dataclass +class Op: + n:int + tab:tuple + circuit:list + def then(self,b): + assert self.n==b.n + return Op(self.n,compose(b.tab,self.tab),self.circuit+b.circuit) + def adjoint(self): + circ=[] + for e in reversed(self.circuit): + if e[0]=='P':circ.append(('P',inv(e[1],self.n))) + elif e[0]=='D':circ.append(('D',e[1],tuple((-x)%4 for x in e[2]))) + elif e[0]=='C':circ.append(('C',e[1],-e[2])) + elif e[0]=='phase':circ.append(('phase',(-e[1])%4)) + else:circ.append(e) + return Op(self.n,inverse(self.tab),circ) + def zero_state(self,basis=0): + N=1<>i)&1 for i in range(n)) + assert all(alpha[i]%2==(Q[i]>>i)&1 for i in range(n)) + return Op(n,tuple([(1<>i&1 else 0,1<>i&1 else 0) for i in range(n)]),[('C',q,sgn)]) +def xgate(n,b):return Op(n,tuple([(1<>i)&1)) for i in range(n)]),[('X',b)]) +def fourier(n,axes=None): + out=ident(n) + for i in range(n) if axes is None else axes:out=out.then(cgate(n,1<len(selected):picks.append(j);selected.append(x) + assert len(picks)==r and all(x>>r==0 for x in Bcols) + Br=transpose(selected,r);Bi=inv(Br,r);Dr=transpose([Dcols[j]&((1<1:selected.reverse();mutated=True + d=a.one + for stage in selected:d=a.mul(ds[stage],d) + left(2*pair,d);left(2*pair+1,d) + elif e[0]=='ADD':plus(e[1],e[2],e[3]) + elif e[0]=='SIGNED_SWAP': + x,y=e[1:];rows[x],rows[y]=rows[y],[a.neg(z) for z in rows[x]] + else:raise ValueError('Unknown core event '+str(e)) + out=[] + for weights in src['boundaries']['left']: + out.append([a.add(*(a.mul(scalar(weights[k]),rows[k][j]) for k in range(n) if Fraction(weights[k]))) for j in range(n)]) + return out + actual=replay(); expected=[]; words=[] + for i,term in enumerate(src['diagonal']): + d=a.one + for stage in stages: + if term[stage+1]:d=a.mul(ds[stage],d) + expected.append([d if i==j else {} for j in range(n)]) + words.append(next(iter(d))[0]) + require(actual==expected,'Full p16 noncommutative Q=1 core identity') + require(replay(True)!=expected,'Reversed paid-IDLE order must reject') + return {'field_roles':32,'matrix_entries_checked':1024,'freely_noncommuting_stage_letters':18,'physical_events':len(events),'both_scalar_boundaries':True,'diagonal_words':words,'reversed_idle_rejected':True,'scope':'Independent Q=1 binding of Dugongue frame-aware-native/noncommuting-controller, crediting Cinna Davis PR4470 and Ryanson Jonathan PR4516. Not a new core theorem; physical Q-dependent boundaries remain separate.'} + +def typed_caller_recipe(path): + src=json.loads(path.read_bytes()); signs={e[1]:(-1 if e[3] else 1) for e in src['physical_events'] if e[0]=='LOCAL'} + left_colors=[]; right_colors=[] + for i,row in enumerate(src['boundaries']['left']): + colors={j%2 for j,x in enumerate(row) if Fraction(x)} + require(colors=={int(i>=16)},'Actual left boundary pure parity row') + left_colors.append(next(iter(colors))) + for j in range(32): + colors={i%2 for i,row in enumerate(src['boundaries']['right']) if Fraction(row[j])} + require(colors=={int(j>=16)},'Actual right boundary pure parity column') + right_colors.append(next(iter(colors))) + events=src['physical_events'] + require(all(e[1]%2==e[2]%2 for e in events if e[0]=='ADD'),'Every bridge preserves H parity') + require(events[-16:]==[['SIGNED_SWAP',2*j,2*j+1] for j in range(16)],'Exact terminal signed-swap suffix') + require(all(e[0]!='SIGNED_SWAP' for e in events[:-16]),'No earlier signed swaps cross H') + require([x[0] for x in src['diagonal']]==[-1]*16+[1]*16,'Exact target central signs') + emitted=[]; code_evaluations=0; positive=0; negative=0 + def code(side,pair,word): + nonlocal code_evaluations,positive,negative + emitted.append({'op':'CODE','field':2*pair+(side=='Y'),'execution_order':[[s,signs[s]] for s in word]}) + code_evaluations+=len(word) + positive+=sum(signs[s]==1 for s in word);negative+=sum(signs[s]==-1 for s in word) + for e in src['physical_events']: + if e[0]=='LOCAL': + _,stage,pair,back=e + code('Y',pair,[stage]);emitted.append({'op':'CENTER_FREE_FULL','stage':stage,'pair':pair,'backward':back});code('X',pair,[stage]) + elif e[0]=='IDLE': + _,pair,stages=e + code('Y',pair,stages);emitted.append({'op':'PAID_IDLE','pair':pair,'stages':stages});code('X',pair,stages) + else: emitted.append({'op':'RETAINED_EVENT','event':e}) + require(code_evaluations==194 and positive==34 and negative==160,'Exact complete caller code census') + endpoint=[] + full=list(signs) + for role,term in enumerate(src['diagonal']): + chosen=[s for s in full if term[s+1]] + b=[[s,signs[s]] for s in reversed(chosen)] + endpoint.append({'role':role,'central_exponent':term[0],'gaussian_stages':list(reversed(chosen)),'code_word_left_to_right':b,'operator':'Q^-1 B D' if term[0]==-1 else 'B D Q','plain_gaussian_after_free_postdecode':term[0]==1}) + postdecode=[] + for e in endpoint: + if e['central_exponent']==1: + postdecode.append({'op':'OUTPUT_CODE_INVERSE','role':e['role'],'execution_order':[[stage,-sign] for stage,sign in e['code_word_left_to_right']]}) + post_count=sum(len(e['execution_order']) for e in postdecode) + require(post_count==97,'Complete positive-half output decoding code count') + require(sum(x['central_exponent']==-1 for x in endpoint)==16,'Negative-Q coded outputs') + require(sum(x['central_exponent']==1 for x in endpoint)==16,'Positive-Q freely decodable outputs') + return {'left_boundary_row_parities':left_colors,'right_boundary_column_parities':right_colors,'emission':emitted,'endpoint':endpoint,'code_blocks':66,'code_evaluations':194,'A_evaluations':positive,'A_inverse_evaluations':negative,'factored_code_adds_each':896,'factored_code_adds_total':194*896,'factored_code_clears_total':194*16,'factored_code_owned_temporaries':8,'positive_half_postdecode':postdecode,'positive_half_postdecode_evaluations':97,'positive_half_postdecode_adds':97*896,'positive_half_postdecode_monomial_passes':97*224,'positive_half_postdecode_clears':97*16,'dense_code_add_bound_each':6048,'dense_code_add_bound_total':194*6048,'code_field_monomial_passes':194*224,'shared_owned_code_temporaries':112,'independent_main_inputs':3584,'independent_helper_inputs':18*408,'helper_reward_multiplicity':18,'recursive_delta_vs_retained_caller':{'rank_8':-144},'denominator_13_realization':'Required for inverse code; fixed-precision scalar closure remains explicit.','status':'EXACT_TYPED_CODED_ENDPOINT_RECIPE_NOT_GAUSSIAN_SUPPLIER_ADMISSION'} + +def run(chronology): + return {'schema':'coded-native-caller-gauge/v1','local':local_checks(),'idle':idle_checks(),'chronology':chronology_checks(chronology),'noncommutative_core':noncommutative_core(chronology),'typed_caller':typed_caller_recipe(chronology),'status':'PASS_NONCOMMUTATIVE_CONTROLLER_CORE_AND_GAUGE_IDENTITIES','complete_gaussian_supplier':False,'complete_typed_rational_caller':True} + +if __name__=='__main__': + import argparse + p=argparse.ArgumentParser();p.add_argument('--chronology',type=Path,default=HERE/'CONTROLLER.json');p.add_argument('--write',action='store_true');args=p.parse_args() + result=json.loads(json.dumps(run(args.chronology))) + if args.write:(HERE/'GAUGE.json').write_text(json.dumps(result,indent=2,sort_keys=True)+'\n') + else: + saved=json.loads((HERE/'GAUGE.json').read_text()) + require(result==saved,'Gauge receipt equality') + print(result['status']) diff --git a/research/coded-native-caller/independent.py b/research/coded-native-caller/independent.py new file mode 100644 index 0000000000..1e8df4e81c --- /dev/null +++ b/research/coded-native-caller/independent.py @@ -0,0 +1,180 @@ +#!/usr/bin/env python3 +"""Finite modular controls, independently implemented without Clifford imports. + +Apache-2.0. Prepared by a separate OpenAI Codex review agent, not an independent +human reviewer. These deterministic finite controls corroborate PHYSICAL.md; +they do not prove the universal identities or replay the native producer. +""" +from fractions import Fraction +from pathlib import Path +import argparse +import json + +HERE = Path(__file__).resolve().parent +PRIME = 65537 +IMAGINARY = 256 +HALF = pow(2, -1, PRIME) +WIDTH = 512 +OWNERS = 112 + + +def require(ok, message): + if not ok: + raise ValueError(message) + + +def run(): + require(IMAGINARY * IMAGINARY % PRIME == PRIME - 1, + "The chosen field element must represent i") + receipt = json.loads((HERE / "NORMALIZERS.json").read_text()) + raw_code = json.loads((HERE / "CODE.json").read_text())["A"] + require(len(raw_code) == OWNERS and + all(len(row) == OWNERS for row in raw_code), "Code dimensions") + code = [] + for row in raw_code: + sparse = [] + for j, value in enumerate(row): + c = Fraction(value) + if c: + sparse.append((j, c.numerator * pow(c.denominator, -1, PRIME) + % PRIME)) + code.append(sparse) + + require(len(receipt["ports"]) == OWNERS, "All physical port records") + permutations = [] + compiled_words = 0 + for record in receipt["ports"]: + rows, mask = record["G_rows"], record["Z_mask"] + require(len(rows) == 9, "Nine binary address axes") + mapping = [] + for x in range(WIDTH): + y = sum(((g & x).bit_count() % 2) << j + for j, g in enumerate(rows)) + mapping.append((y, -1 if (mask & y).bit_count() % 2 else 1)) + require(sorted(y for y, _ in mapping) == list(range(WIDTH)), + "Each retained K is a signed permutation") + permutations.append(mapping) + wrappers = record["compiled_wrappers"] + require(len(wrappers) == 8, "Four forward and four backward wrappers") + for wrapper in wrappers.values(): + require(all(event[0] in ("P", "D", "X", "phase") + for event in wrapper["word"]), + "Compiled physical wrappers contain no Gaussian gate") + compiled_words += 1 + + def signed_map(bank, inverse=False): + out = [[0] * WIDTH for _ in range(OWNERS)] + for i, row in enumerate(bank): + if inverse: + for j, (k, sign) in enumerate(permutations[i]): + out[i][j] = sign * row[k] % PRIME + else: + for j, (k, sign) in enumerate(permutations[i]): + out[i][k] = sign * row[j] % PRIME + return out + + def recode(bank, inverse=False): + common = signed_map(bank) + out = [] + for i in range(OWNERS): + row = [0] * WIDTH + for j, coefficient in code[i]: + for k in range(WIDTH): + row[k] += coefficient * common[j][k] + out.append([value % PRIME for value in row]) + out = signed_map(out, True) + if inverse: + denominator = pow(13, -1, PRIME) + out = [[(a + 12 * b) * denominator % PRIME + for a, b in zip(row, original)] + for row, original in zip(out, bank)] + return out + + def gaussian(bank, axes, sign=1): + out = [row[:] for row in bank] + diagonal = (1 + sign * IMAGINARY) * HALF % PRIME + off_diagonal = (1 - sign * IMAGINARY) * HALF % PRIME + for bit in axes: + step = 1 << bit + for row in out: + for start in range(0, WIDTH, 2 * step): + for k in range(start, start + step): + u, v = row[k], row[k + step] + row[k] = (diagonal * u + off_diagonal * v) % PRIME + row[k + step] = (off_diagonal * u + diagonal * v) % PRIME + return out + + def q(bank, exponent=1): + out = bank + for _ in range(abs(exponent)): + out = gaussian(out, [0], 1 if exponent > 0 else -1) + return out + + def d(bank, exponent=1): + out = bank + for _ in range(abs(exponent)): + out = gaussian(out, range(1, 9), 1 if exponent > 0 else -1) + return out + + def add(left, right, sign=1): + return [[(a + sign * b) % PRIME for a, b in zip(u, v)] + for u, v in zip(left, right)] + + x = [[(17 * i * i + 13 * j * j + 3 * i * j + 2 * i + 5 * j + 7) + % PRIME for j in range(WIDTH)] for i in range(OWNERS)] + y = [[(19 * i * i + 11 * j * j + 7 * i * j + 3 * i + 2 * j + 11) + % PRIME for j in range(WIDTH)] for i in range(OWNERS)] + require(signed_map(signed_map(x), True) == x, "K inverse finite control") + cx = recode(x) + require(recode(cx, True) == x, "C inverse finite control") + require(recode(q(d(x))) == q(d(cx)), "Actual code commutes with DQ") + require(recode(q(x)) != q(cx), "Actual code must expose [C,Q] nonzero") + + # Evaluate the raw inverse transpose, then the proposed physical correction. + x0 = q(x, -2) + u = d(add(x0, q(recode(y), -1), -1), -1) + v = d(y, -1) + u, v = q(d(u, 2), 2), d(v, 2) + require(u == d(add(x, q(recode(y)), -1)) and v == d(y), + "X-only Q squared correction of the actual raw dual") + + # The old Y-only convention is a genuine failing control for this actual C. + y0 = q(y, -2) + old_u = d(add(x, q(recode(y0), -1), -1), -1) + old_u = d(old_u, 2) + require(old_u != u, "Old Y-only Q squared convention must fail") + return { + "schema": "coded-native-independent-modular-controls/1", + "status": "PASS_INDEPENDENT_FINITE_MODULAR_CONTROLS", + "prime": PRIME, + "imaginary_unit": IMAGINARY, + "fiber_columns": 1, + "owners_per_bank": OWNERS, + "addresses_per_owner": WIDTH, + "deterministic_test_vectors": 2, + "compiled_gaussian_free_words": compiled_words, + "positive_controls": ["signed-map inverse", "code inverse", + "C commutes with DQ", "X-only raw-dual correction"], + "negative_controls": ["C does not commute with Q", + "old Y-only correction fails"], + "scope": "Finite deterministic modular corroboration; not a universal " + "proof, native-word replay, or independent human acceptance.", + } + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("--write", action="store_true") + args = parser.parse_args() + result = run() + target = HERE / "INDEPENDENT.json" + if args.write: + target.write_text(json.dumps(result, indent=2, sort_keys=True) + "\n") + else: + require(json.loads(target.read_text()) == result, + "Regenerated independent-control receipt") + print(result["status"]) + + +if __name__ == "__main__": + main() diff --git a/research/coded-native-caller/native-source.json.gz b/research/coded-native-caller/native-source.json.gz new file mode 100644 index 0000000000..46d929df83 Binary files /dev/null and b/research/coded-native-caller/native-source.json.gz differ diff --git a/research/coded-native-caller/normalizers.py b/research/coded-native-caller/normalizers.py new file mode 100644 index 0000000000..a1b4e1e662 --- /dev/null +++ b/research/coded-native-caller/normalizers.py @@ -0,0 +1,173 @@ +"""Exact signed-permutation normalizers for PR4929's coupled native offer. +Apache-2.0; substantial OpenAI Codex assistance. Retained Clifford sources are +credited in PHYSICAL.md. Run read-only by default; --write emits the receipt. +""" +from pathlib import Path +from fractions import Fraction as F +from hashlib import sha256 +import argparse +import gzip +import importlib.util +import json +import sys + +HERE=Path(__file__).resolve().parent +SOURCE_PAYLOAD='cfcd36b40326d7a5815e1db5313444379b3fb756b27d5201c561574c085cc0dd' +CODE_HASH='8be7f3f073b7981ec91c6af43edff0ac8a89f4824ef6026ae758c287dd6c03d0' +CLIFFORD_HASH='2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962' +MODE_LINES=(7,25,42,52,76,82,97,127) + +def need(ok,message): + if not ok: raise ValueError(message) + +def nullspace(rows,n): + a=[[F(x)for x in row]for row in rows];piv=[];k=0 + for j in range(n): + t=next((i for i in range(k,len(a))if a[i][j]),None) + if t is None:continue + a[t],a[k]=a[k],a[t];d=a[k][j];a[k]=[x/d for x in a[k]] + for i in range(len(a)): + if i!=k: + d=a[i][j] + if d:a[i]=[x-d*y for x,y in zip(a[i],a[k])] + piv.append(j);k+=1 + return [[F(i==j) if i not in piv else -a[piv.index(i)][j] for i in range(n)]for j in range(n)if j not in piv] + +def mode_factor(A,ports): + E=[[A[i][j]-F(i==j)for j in range(112)]for i in range(112)] + selected=(0,1,2,3,4,5,6,12) + G=[[E[i][j]for j in selected]for i in range(112)] + columns=[] + for line in MODE_LINES: + ns=nullspace([G[i]for i,q in enumerate(ports)if(q&line).bit_count()%2],8) + need(len(ns)==1,'Mode nullspace is one dimensional') + v=[sum(x*y for x,y in zip(row,ns[0]))for row in G] + scale=next(x for x in v if x);v=[x/scale for x in v] + need(all(x in (-1,0,1)for x in v),'Integral signed mode') + columns.append([int(x)for x in v]) + need(all(sum(x*y for x,y in zip(a,b))==56*(i==j)for i,a in enumerate(columns)for j,b in enumerate(columns)),'Orthogonal mode Gram matrix') + need(all(sum(c[i]*c[j]for c in columns)==-4*E[i][j]for i in range(112)for j in range(112)),'All code entries from eight modes') + need(all(sum(c[i]!=0 for c in columns)==4 for i in range(112)),'Four mode contacts per row') + return columns + +def run(): + raw=gzip.decompress((HERE/'native-source.json.gz').read_bytes()) + need(sha256(raw).hexdigest()==SOURCE_PAYLOAD,'Changed actual native source payload') + code=(HERE/'CODE.json').read_bytes();need(sha256(code).hexdigest()==CODE_HASH,'Changed PR4929 code') + cp=HERE/'clifford_exact.py';need(sha256(cp.read_bytes()).hexdigest()==CLIFFORD_HASH,'Changed retained exact Clifford implementation') + spec=importlib.util.spec_from_file_location('coded_normalizers_clifford',cp) + ce=importlib.util.module_from_spec(spec);sys.modules[spec.name]=ce;spec.loader.exec_module(ce) + canonical=json.loads(raw)['canonical'];ports=canonical['ports'] + need(len(ports)==112 and all(q.bit_count()in(3,7)for q in ports),'Exact port domain') + A=[[F(x)for x in row]for row in json.loads(code)['A']] + need(len(A)==112 and all(len(row)==112 for row in A),'Code shape') + M=mode_factor(A,ports) + N=9;R=ce.fourier(N);Q=ce.cgate(N,1);D=ce.fourier(N,range(1,N)) + def equal(a,b):return a.tab==b.tab and a.zero_state()==b.zero_state() + def monomial(op):return all(x==0 for x,z,ph in op.tab[N:]) + def conjugate(op): + circuit=[] + for e in op.circuit: + if e[0]=='D':circuit.append(('D',e[1],tuple((-x)%4 for x in e[2]))) + elif e[0]=='C':circuit.append(('C',e[1],-e[2])) + elif e[0]=='phase':circuit.append(('phase',(-e[1])%4)) + else:circuit.append(e) + return ce.Op(N,tuple((x,z,(-ph)%4)for x,z,ph in op.tab),circuit) + def trans(v,x):return x^(v if ce.parity(x&v)else 0) + records=[];phase_controls=0 + for idx,q in enumerate(ports): + if not(q&1):vs=[1^q] + else: + j=next(j for j in range(1,N)if not(q>>j&1));vs=[1^(1<>j)&1)for j in range(N)))) + # Exact symbolic tableau plus an absolute-phase state; not merely ranks. + need(equal(K.then(R),R.then(K)),'Exact full-Gaussian commutator') + need(all((ce.mv(ce.transpose(G,N),x).bit_count()-x.bit_count()-2*ce.parity(z&x))%4==0 for x in range(512)),'Literal weight congruence') + if z: + need(not equal(perm.then(R),R.then(perm)),'Omitting signed phase must fail') + phase_controls+=1 + E=ce.canonical_frame(N,canonical['frames'][canonical['start'][idx]]) + S=ce.canonical_frame(N,canonical['frames'][canonical['final'][112+idx]]) + need(canonical['final'][idx]==1 and canonical['start'][112+idx]==0,'Full-X and ground-Y boundaries') + MX=Q.adjoint().then(K).then(E);MY=K;OX=K.adjoint();OY=S.adjoint().then(K.adjoint()).then(D) + need(all(monomial(op)for op in (MX,MY,OX,OY)),'Every physical wrapper is monomial') + need(equal(MX.then(E.adjoint()),Q.adjoint().then(K)),'All incoming coded columns') + need(equal(S.then(OY),K.adjoint().then(D)),'All outgoing coded rows') + need(equal(MX.then(E.adjoint()).then(R).then(OX),D),'Independent X diagonal') + need(equal(MY.then(S).then(OY),D),'Independent Y diagonal') + need(equal(MX.then(E.adjoint()).then(S).then(OY),Q.adjoint().then(D)),'Original same-port shear block') + # K is a real signed permutation. The real transpose equals its adjoint. + need(all(e[0]!='D'or all(a%2==0 for a in e[2])for e in K.circuit),'Real K phases') + # Raw inverse transpose uses conjugated endpoint frames and wrappers. + Q2=Q.then(Q);D2=D.then(D) + BX=Q2.adjoint().then(conjugate(MX)) + BO=conjugate(OX).then(D2).then(Q2) + BY=conjugate(OY).then(D2) + need(equal(BX.then(conjugate(E).adjoint()).then(conjugate(R)).then(BO),D),'Backward corrected X diagonal') + need(equal(K.then(conjugate(S)).then(BY),D),'Backward corrected Y diagonal') + need(equal(conjugate(R).then(BO),K.adjoint().then(Q).then(D)),'Backward all coded outgoing rows') + need(all(monomial(op)for op in (BX,K,BO,BY)),'Backward corrected wrappers monomial') + operations={'input_X':MX,'input_Y':MY,'output_X':OX,'output_Y':OY, + 'backward_input_X':BX,'backward_input_Y':K,'backward_output_X':BO,'backward_output_Y':BY} + compiled={} + for name,op in operations.items(): + mon,recipe=ce.monomial(op) + need(equal(mon,op),'Compiled monomial exact phase and tableau') + need(all(e[0] in ('P','D','X','phase')for e in mon.circuit),'No Gaussian in emitted wrapper') + compiled[name]={'word':mon.circuit,'recipe':recipe} + wrong=ce.Op(N,K.tab,K.circuit+[('phase',1)]) + need(not equal(wrong,K),'Absolute-phase-only mutation rejected') + records.append({'port':idx,'q':q,'orthogonal_transvections':vs,'G_rows':G,'Z_mask':z, + 'K_word':K.circuit,'compiled_wrappers':compiled}) + need(phase_controls>0,'Nonvacuous omitted-phase control') + # Independent scalar execution of A and A^-1 on every arbitrary-input basis. + for inverse,den in ((False,4),(True,52)): + for j in range(112): + x=[F(i==j)for i in range(112)] + temp=[sum(F(c[i])*x[i]for i in range(112))for c in M] + y=[x[i]-sum(F(M[k][i])*temp[k]for k in range(8))/den for i in range(112)] + target=[A[i][j]if not inverse else (A[i][j]+12*F(i==j))/13 for i in range(112)] + need(y==target,'Literal owned-mode scalar recoding') + result={'schema':'coded-native-real-normalizers/1','status':'PASS_CODED_NATIVE_REAL_NORMALIZERS', + 'source_payload_sha256':SOURCE_PAYLOAD,'code_sha256':CODE_HASH,'clifford_sha256':CLIFFORD_HASH, + 'ports':records,'mode_columns':M,'finite_checks':{'ports':112,'weight_congruence_addresses':112*512, + 'exact_endpoint_factor_identities':112*8,'monomial_wrappers':896,'omitted_phase_rejections':phase_controls, + 'scalar_basis_recodings':224,'gaussian_free_compiled_wrappers':896,'absolute_phase_mutations_rejected':112}, + 'recoding_bill':{'owned_fields':8,'signed_mode_adds':448,'output_scaled_adds':448, + 'owned_initial_clears':8,'owned_terminal_clears':8,'monomial_field_maps':224, + 'forward_update_coefficient':'-1/4','inverse_update_coefficient':'-1/52', + 'forward_prefix_component_l1_upper':57,'inverse_prefix_component_l1_upper':56,'inverse_output_prefix_component_l1_upper':'69/13'}, + 'local_gauge_bill':{'recodings':2,'added_recursive_calls':0,'owned_fields_reused':8, + 'recoding_scalar_adds':1792,'recoding_owned_clears':32,'recoding_monomial_field_maps':448, + 'main_wrapper_field_maps':448,'backward_extra_monomial_field_maps_upper':448}, + 'scope':'Exact physical central ABI and local gauges; not full-controller or multiplication admission.'} + return json.loads(json.dumps(result,sort_keys=True)) + +def render_receipt(result): + """Keep each generated port record on one line; compare parsed mathematics.""" + entries=[] + for key,value in sorted(result.items()): + if key=='ports': + body='[\n'+',\n'.join(' '+json.dumps(row,sort_keys=True,separators=(',',':')) for row in value)+'\n ]' + else: + body=json.dumps(value,sort_keys=True,separators=(',',':')) + entries.append(' '+json.dumps(key)+': '+body) + return '{\n'+',\n'.join(entries)+'\n}\n' + +def main(): + p=argparse.ArgumentParser();p.add_argument('--write',action='store_true');args=p.parse_args() + result=run();path=HERE/'NORMALIZERS.json' + if args.write:path.write_text(render_receipt(result)) + else:need(json.loads(path.read_text())==result,'Changed generated normalizer receipt') + print(result['status'],json.dumps(result['finite_checks'],sort_keys=True)) +if __name__=='__main__':main() diff --git a/research/coded-native-caller/terminal.py b/research/coded-native-caller/terminal.py new file mode 100644 index 0000000000..0f57495f97 --- /dev/null +++ b/research/coded-native-caller/terminal.py @@ -0,0 +1,207 @@ +#!/usr/bin/env python3 +"""Independent support test for the one-stage terminal code (stdlib only). + +Source credit: Dugongue's PR #4929 code, Cinna Davis's center-free kernel, +and Cao Yifan's retained native source. The signed normalizer construction +is independently reconstructed here; normalizers.py is not imported. +""" +from collections import Counter +from fractions import Fraction +from hashlib import sha256 +from pathlib import Path +import gzip +import json +import sys + +HERE = Path(__file__).resolve().parent + + +def need(condition, message): + if not condition: + raise ValueError(message) + + +def parity(x): + return x.bit_count() & 1 + + +def act(columns, x): + answer = 0 + for bit, column in enumerate(columns): + if (x >> bit) & 1: + answer ^= column + return answer + + +def transpose(columns): + return [sum(((column >> row) & 1) << j + for j, column in enumerate(columns)) + for row in range(len(columns))] + + +def reconstruct(q, dimension): + """Return G columns and output sign mask of K = Z_z P_G.""" + e = 1 + need(q != (1 << dimension) - 1 and parity(q) == 1, + "Port must be odd and distinct from the all-ones vector") + if not (q & e): + transvections = [e ^ q] + else: + j = next(j for j in range(1, dimension) if not ((q >> j) & 1)) + transvections = [e ^ (1 << j), (1 << j) ^ q] + need(all(parity(v) == 0 for v in transvections), + "Orthogonal transvections require even vectors") + columns = [] + for j in range(dimension): + x = 1 << j + for v in transvections: + if parity(x & v): + x ^= v + columns.append(x) + need(columns[0] == q, "Normalizer must send the central line to its port") + need(all(parity(a & b) == int(i == j) + for i, a in enumerate(columns) + for j, b in enumerate(columns)), "Normalizer must be orthogonal") + rows = transpose(columns) + z = sum((((row.bit_count() - 1) // 2) & 1) << j + for j, row in enumerate(rows)) + return columns, z + + +def transition(left, right): + """K_left^{-1} K_right as (binary columns, input sign mask).""" + gi, zi = left + gj, zj = right + inverse = transpose(gi) + columns = [act(inverse, column) for column in gj] + beta = sum(parity((zi ^ zj) & column) << j + for j, column in enumerate(gj)) + return columns, beta + + +def column_expansion(columns, beta, x): + """Twice Q^{-1} M Q on |x>, as exact Gaussian integer coefficients. + + Q = (1+i)/2 * (I-i T_e), M|x> = (-1)^(beta.x)|Gx>. + No floating point or Clifford implementation is used. + """ + s0 = 1 - 2 * parity(beta & x) + s1 = 1 - 2 * parity(beta & (x ^ 1)) + gx = act(columns, x) + ge = columns[0] + terms = ((gx, (s0, 0)), (gx ^ ge, (0, -s1)), + (gx ^ 1, (0, s0)), (gx ^ ge ^ 1, (s1, 0))) + answer = {} + for position, (real, imag) in terms: + old_real, old_imag = answer.get(position, (0, 0)) + answer[position] = (old_real + real, old_imag + imag) + return {position: value for position, value in answer.items() + if value != (0, 0)} + + +def analyze(ports, code, exhaustive_pairs=()): + n = 9 + need(len(ports) == len(set(ports)) == 112, "112 distinct source ports") + need(len(code) == 112 and all(len(row) == 112 for row in code), + "Exact owner-code dimensions") + normalizers = [reconstruct(q, n) for q in ports] + ranks = Counter() + nonzero = [] + for i, row in enumerate(code): + for j, coefficient in enumerate(row): + if not coefficient: + continue + need(i != j, "Every nonzero source-code block is off diagonal") + need(abs(coefficient) == Fraction(1, 2), "Frozen code coefficient") + columns, beta = transition(normalizers[i], normalizers[j]) + need(columns[0] not in (0, 1), + "Distinct source ports force two independent translation lines") + deltas = {0, 1, columns[0], columns[0] ^ 1} + need(len(deltas) == 4, "Exact rank-two support certificate") + # Signs may vary with x. Distinct destinations make every sign + # assignment nonzero; these four cases exhaust their possibilities. + for s0 in (-1, 1): + for s1 in (-1, 1): + need(all(value != (0, 0) for value in + ((s0, 0), (0, -s1), (0, s0), (s1, 0))), + "No absolute-phase support cancellation") + ranks[2] += 1 + nonzero.append((i, j)) + need(len(nonzero) == 5824, "Frozen nonzero block count") + checked = [] + for i, j in exhaustive_pairs: + need(code[i][j] != 0, "Exhaustive test must use an actual nonzero block") + columns, beta = transition(normalizers[i], normalizers[j]) + row_counts = Counter() + for x in range(1 << n): + expansion = column_expansion(columns, beta, x) + need(len(expansion) == 4, "Exact one-column support") + need(all(abs(a) + abs(b) == 1 for a, b in expansion.values()), + "Exact nonzero Gaussian-integer coefficients") + row_counts.update(expansion.keys()) + need(len(row_counts) == 1 << n and set(row_counts.values()) == {4}, + "All rows as well as columns have support four") + checked.append([i, j]) + return normalizers, ranks, checked + + +def run(): + raw = (HERE / "native-source.json.gz").read_bytes() + source = json.loads(gzip.decompress(raw))["canonical"] + code_bytes = (HERE / "CODE.json").read_bytes() + code = [[Fraction(value) for value in row] + for row in json.loads(code_bytes)["A"]] + twice = [[int(2 * value) for value in row] for row in code] + need(all(Fraction(twice[i][j], 2) == code[i][j] + for i in range(112) for j in range(112)), "Half-integral source code") + need(all(twice[i][j] == twice[j][i] + for i in range(112) for j in range(112)), "Symmetric source code") + need(all(sum(a * b for a, b in zip(twice[i], twice[j])) + + 24 * twice[i][j] == 52 * int(i == j) + for i in range(112) for j in range(112)), + "Exact source-code polynomial justifying the inverse") + pairs = [(0, next(j for j, value in enumerate(code[0]) if value)), + (37, next(j for j, value in enumerate(code[37]) if value)), + (111, next(j for j, value in enumerate(code[111]) if value))] + normalizers, ranks, checked = analyze(source["ports"], code, pairs) + # Meaningful false-positive controls: the identity really has one support + # point after Q conjugation, and permitting a diagonal code block must fail. + identity = [1 << j for j in range(9)] + need(all(column_expansion(identity, 0, x) == {x: (2, 0)} + for x in range(512)), "Diagonal cancellation control") + mutant = [row[:] for row in code] + mutant[0][0] = Fraction(1, 2) + try: + analyze(source["ports"], mutant) + except ValueError as error: + need("off diagonal" in str(error), "Mutation must fail for its actual defect") + else: + raise ValueError("Diagonal mutation was accepted") + return { + "scope": "One source code C or its inverse; not a product of different stage codes", + "source_sha256": sha256(raw).hexdigest(), + "code_sha256": sha256(code_bytes).hexdigest(), + "ports": len(normalizers), + "nonzero_off_diagonal_blocks": sum(ranks.values()), + "orientations": ["C", "C^{-1}=(C+12I)/13"], + "gaussian_support_rank_histogram": {str(k): v for k, v in sorted(ranks.items())}, + "exhaustive_512_column_blocks": checked, + "exact_support_per_block_row_at_width_f": "4**f", + "fixed_free_word_excluded": True, + "free_model": "Fixed finite word of scalar ADD/SCALE, monomial address maps, and owned COPY/CLEAR", + "add_count_lower_bound_from_support": "at least 2*f", + "controls": ["identity conjugation has support one", "diagonal code mutation rejected"], + "unresolved": ["Products of stage codes may cancel", "Paid terminal decoders", + "Changed caller or recursively coded job family", "Selected exponent admission"], + } + + +if __name__ == "__main__": + result = run() + rendered = json.dumps(result, indent=2, sort_keys=True) + "\n" + if "--write" in sys.argv: + (HERE / "TERMINAL.json").write_text(rendered) + else: + need(json.loads((HERE / "TERMINAL.json").read_text()) == result, + "Frozen terminal receipt differs from independent replay") + print("PASS: 5,824 actual off-diagonal terminal blocks have rank-two support; one-stage scope only") diff --git a/research/coded-native-caller/verify.py b/research/coded-native-caller/verify.py new file mode 100644 index 0000000000..94aa2544e1 --- /dev/null +++ b/research/coded-native-caller/verify.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python3 +"""Bounded exact replay of the coded native interface. Apache-2.0.""" +from pathlib import Path +from hashlib import sha256 +import importlib.util +import json +import sys + +HERE = Path(__file__).resolve().parent + + +def need(ok, message): + if not ok: + raise ValueError(message) + + +def main(): + for row in json.loads((HERE / "ORIGINS.json").read_text()): + need(sha256((HERE / row["path"]).read_bytes()).hexdigest() == row["sha256"], + "Changed frozen source: " + row["path"]) + results = {} + for name, receipt in (("normalizers", "NORMALIZERS.json"), + ("gauge", "GAUGE.json"), + ("terminal", "TERMINAL.json"), + ("independent", "INDEPENDENT.json")): + spec = importlib.util.spec_from_file_location("coded_caller_" + name, HERE / (name + ".py")) + module = importlib.util.module_from_spec(spec) + sys.modules[spec.name] = module + spec.loader.exec_module(module) + result = module.run(HERE / "CONTROLLER.json") if name == "gauge" else module.run() + result = json.loads(json.dumps(result)) + need(result == json.loads((HERE / receipt).read_text()), "Changed mathematical receipt: " + receipt) + results[name] = result.get("status", "PASS_" + name.upper() + "_RECEIPT") + print(json.dumps({"status": "PASS_CODED_NATIVE_INTERFACE_AND_CALLER_GATES", + "checks": results, "complete_gaussian_supplier": False, "complete_typed_rational_caller": True, "new_kappa": None}, sort_keys=True)) + + +if __name__ == "__main__": + main()