From 0489bb11e6951652c770783dd25c0c6c63e8ada0 Mon Sep 17 00:00:00 2001 From: cmwslw Date: Mon, 8 Jan 2018 23:35:30 -0800 Subject: [PATCH] More formatting fixes. --- expreduce/builtin_comparison.go | 8 ++++---- expreduce/builtin_string.go | 2 +- expreduce/builtin_system.go | 4 ++-- expreduce/interp_test.go | 4 ++-- expreduce/resources.go | 12 ++++++------ expreduce/resources/comparison.m | 32 ++++++++++++++++---------------- expreduce/resources/expression.m | 4 ++-- expreduce/resources/string.m | 2 +- expreduce/string.go | 7 +++++++ 9 files changed, 41 insertions(+), 34 deletions(-) diff --git a/expreduce/builtin_comparison.go b/expreduce/builtin_comparison.go index bd27af5..b82131b 100644 --- a/expreduce/builtin_comparison.go +++ b/expreduce/builtin_comparison.go @@ -54,7 +54,7 @@ func getComparisonDefinitions() (defs []Definition) { defs = append(defs, Definition{ Name: "Equal", toString: func(this *Expression, params ToStringParams) (bool, string) { - return ToStringInfixAdvanced(this.Parts[1:], " == ", "", true, "", "", params) + return ToStringInfixAdvanced(this.Parts[1:], " == ", "System`Equal", false, "", "", params) }, legacyEvalFn: func(this *Expression, es *EvalState) Ex { if len(this.Parts) < 1 { @@ -78,7 +78,7 @@ func getComparisonDefinitions() (defs []Definition) { defs = append(defs, Definition{ Name: "Unequal", toString: func(this *Expression, params ToStringParams) (bool, string) { - return ToStringInfixAdvanced(this.Parts[1:], " != ", "", true, "", "", params) + return ToStringInfixAdvanced(this.Parts[1:], " != ", "System`Unequal", false, "", "", params) }, legacyEvalFn: func(this *Expression, es *EvalState) Ex { if len(this.Parts) != 3 { @@ -100,7 +100,7 @@ func getComparisonDefinitions() (defs []Definition) { defs = append(defs, Definition{ Name: "SameQ", toString: func(this *Expression, params ToStringParams) (bool, string) { - return ToStringInfixAdvanced(this.Parts[1:], " === ", "", true, "", "", params) + return ToStringInfixAdvanced(this.Parts[1:], " === ", "System`SameQ", false, "", "", params) }, legacyEvalFn: func(this *Expression, es *EvalState) Ex { if len(this.Parts) < 1 { @@ -121,7 +121,7 @@ func getComparisonDefinitions() (defs []Definition) { defs = append(defs, Definition{ Name: "UnsameQ", toString: func(this *Expression, params ToStringParams) (bool, string) { - return ToStringInfixAdvanced(this.Parts[1:], " =!= ", "", true, "", "", params) + return ToStringInfixAdvanced(this.Parts[1:], " =!= ", "System`UnsameQ", false, "", "", params) }, legacyEvalFn: func(this *Expression, es *EvalState) Ex { if len(this.Parts) < 1 { diff --git a/expreduce/builtin_string.go b/expreduce/builtin_string.go index c54186b..14f3b1f 100644 --- a/expreduce/builtin_string.go +++ b/expreduce/builtin_string.go @@ -20,7 +20,7 @@ func GetStringDefinitions() (defs []Definition) { } context, contextPath := ActualStringFormArgs(es) - return NewString(this.Parts[1].StringForm(ToStringParams{form: formAsSymbol.Name[7:], context: context, contextPath: contextPath})) + return NewString(this.Parts[1].StringForm(ToStringParams{form: formAsSymbol.Name[7:], context: context, contextPath: contextPath, previousHead: ""})) }, }) defs = append(defs, Definition{ diff --git a/expreduce/builtin_system.go b/expreduce/builtin_system.go index 2348dd0..e6693b4 100644 --- a/expreduce/builtin_system.go +++ b/expreduce/builtin_system.go @@ -377,7 +377,7 @@ func GetSystemDefinitions() (defs []Definition) { if len(this.Parts) != 3 { return false, "" } - return ToStringInfixAdvanced(this.Parts[1:], " = ", "", true, "(", ")", params) + return ToStringInfixAdvanced(this.Parts[1:], " = ", "System`Set", false, "(", ")", params) }, Bootstrap: true, legacyEvalFn: func(this *Expression, es *EvalState) Ex { @@ -425,7 +425,7 @@ func GetSystemDefinitions() (defs []Definition) { if len(this.Parts) != 3 { return false, "" } - return ToStringInfixAdvanced(this.Parts[1:], " := ", "", true, "(", ")", params) + return ToStringInfixAdvanced(this.Parts[1:], " := ", "System`SetDelayed", false, "", "", params) }, Bootstrap: true, legacyEvalFn: func(this *Expression, es *EvalState) Ex { diff --git a/expreduce/interp_test.go b/expreduce/interp_test.go index c815421..5a7be25 100644 --- a/expreduce/interp_test.go +++ b/expreduce/interp_test.go @@ -67,6 +67,6 @@ func TestInterp(t *testing.T) { // Test newline handling assert.Equal(t, "CompoundExpression[a, b]", Interp("a;b\n", es).String()) //assert.Equal(t, "Sequence[a, b]", Interp("a\nb\n", es).String()) - assert.Equal(t, "(c) = ((a*b))", Interp("c = (a\nb)\n", es).String()) - assert.Equal(t, "(c) = ((a*b))", Interp("c = (a\n\nb)\n", es).String()) + assert.Equal(t, "((c = a*b))", Interp("c = (a\nb)\n", es).String()) + assert.Equal(t, "((c = a*b))", Interp("c = (a\n\nb)\n", es).String()) } diff --git a/expreduce/resources.go b/expreduce/resources.go index 994ffd6..ce40084 100644 --- a/expreduce/resources.go +++ b/expreduce/resources.go @@ -224,7 +224,7 @@ func resourcesCombinatoricsM() (*asset, error) { return a, nil } -var _resourcesComparisonM = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xdc\x5a\xdd\x6f\xdb\x38\x12\x7f\xcf\x5f\xc1\xfa\xc9\x49\x55\x25\xb6\xcf\xc5\xa6\x59\xe5\xb0\xd8\x4b\x0f\xc5\xed\x57\xda\xde\xcb\x19\x6e\x4c\xd9\x74\x22\xc4\x96\xb2\xfa\x48\x9d\xa6\xf9\xdf\x6f\x86\xa4\x28\x4a\x16\x29\x2a\xed\xe2\x80\x0b\x5a\x58\x22\x7f\x33\x1c\xce\x07\x39\x43\xea\xb7\x62\xcb\xd2\x68\x79\xf9\xe6\x4d\x91\xd1\x6b\x46\x02\x42\x06\x8b\xb2\x71\xc6\x76\x77\xe9\x7c\x41\x52\x96\x17\x69\x9c\x91\xc5\xc7\xb4\x60\x0b\x12\xad\xc9\x02\x7b\xe0\x29\x23\x94\xc4\x02\x4d\xfe\x2c\x68\x9c\x47\xf9\x83\x47\x16\x6f\xe9\x26\x03\x60\x92\xdf\xb0\xf4\x73\x94\x31\x7f\x70\x76\x50\x31\xbd\x9a\x93\x37\x01\x79\xb7\x9e\x41\x53\xc8\xd2\xcb\xd9\x6f\x33\x36\x9f\x7b\x04\xb9\x7b\x84\xd3\xce\xcf\x0e\x7e\xca\xf3\x34\x0a\x8b\x9c\x65\xb3\x92\x74\x0e\xe2\x3d\xfe\x91\x26\x39\x5b\xe6\x6c\xf5\x74\x76\xf0\x91\x65\x79\xa6\xc4\xc5\xde\x03\x02\x7f\x17\x1f\xa2\xed\xdd\x86\x5d\xec\x28\xfe\x64\x33\xde\x28\x3a\xe8\x96\x21\xd1\x4c\x8c\xa5\x64\x9a\xc2\xf8\x2d\x28\x2e\x8b\x06\xa3\x6e\xb0\x0f\x51\x8c\xd0\x56\x6c\x63\x60\x84\x8e\x01\xca\x91\xa0\x83\x0b\x3e\x25\x07\x89\x7f\x4e\x32\x4e\xe8\x24\xcf\x9f\x69\x6e\x14\xa8\x15\x2c\xc5\x3a\x52\x2f\xbb\xb9\xe3\x7c\x90\xa0\x9a\xd0\x01\x18\xe9\x02\x1c\x63\x53\xf9\xd7\x60\xb1\xb9\xc9\x48\x10\x90\xf4\x26\x5b\x10\x76\x4f\x37\x05\x05\x23\x93\x3c\xe1\x0e\x40\x92\x54\xb8\x00\xba\x19\x43\x52\x70\x29\x6c\x8c\x62\xf5\x06\x6e\x77\x1b\x27\x9f\x63\x74\x2b\xcd\x4d\xf8\x40\x06\x1f\xe1\x7d\x0e\x0e\xf2\x73\xb2\xdd\xb2\x38\x9f\x0d\x2e\xc0\xc1\x59\x96\x45\x49\x2c\x07\x43\x01\x43\x26\x44\x22\x9f\xa3\xcd\x46\xc9\x5e\x8a\xfe\x66\x50\xd3\x10\xc8\x15\x5f\x73\x1d\x0d\xb0\x77\xe0\x91\xc1\xe9\xd1\x2e\x08\x76\x47\xa7\x35\xa0\x1a\xf2\x43\xb2\x65\x79\xb4\x05\x5d\x30\x6d\xf0\x2d\xe5\xd3\xc7\x9f\x38\xc9\x95\x08\x1e\x36\x72\x21\x57\xc5\x92\x91\x55\x02\x64\xd8\x8f\xb2\x92\x1b\xf8\x0f\x42\x81\x52\x72\xb2\x06\x5c\xa9\x39\x9f\xbc\x83\x79\xdc\x30\xd0\xee\x92\x66\x2c\xf3\xf0\x85\x64\x39\x4c\x02\x45\x10\xd3\x4a\xd9\x96\x46\x31\x29\xe2\x72\x7e\x2b\xf3\xc4\x86\x43\x98\xd2\xe1\x21\x9a\x73\x38\x1c\x9d\xe0\xb3\x36\xcf\xd1\x49\xfb\x44\x85\x31\x96\x30\xbb\x68\xc5\xd2\x0c\x84\xca\xd9\x35\x3e\xd0\x78\x45\xde\x33\xb0\x3e\xc8\x45\x73\x42\x53\x90\x73\x93\x80\xb4\x2c\x4e\x8a\xeb\x1b\xdd\x04\x66\x99\xa6\x28\x41\xbe\xbd\x0b\xa6\x9d\xf6\x40\x94\x33\xcc\x77\xc5\x9d\xe0\x9f\x75\xe6\x34\xae\x6c\xf3\x9e\xe6\x60\x67\x68\x2d\x8d\x64\x9e\x19\x8f\x0b\x1c\xe8\x6f\xc7\x93\x20\x98\x1c\x8f\x3b\x25\xe2\xc0\x1f\x8e\x5f\x0f\xaa\x05\xe6\x6d\x91\xe2\xb2\xdc\xb6\x38\xb6\x30\x80\x55\x7a\xb7\x43\xf3\x8e\x3d\xf2\x00\x4b\xfb\x97\x2f\x73\x7c\x6b\x69\xb6\x4d\x58\x79\xe7\x96\xe6\xcb\x1b\x72\x47\xf3\x9c\xc1\x86\xd2\x98\x69\xb9\xa4\x3c\x8e\x3c\xe4\x3b\x79\xc2\x01\xae\x7e\x89\xb2\xdc\x23\xfb\x6d\xad\xc3\x7d\xbc\x81\xb5\x61\x5d\xc4\x4b\xa1\x53\xb9\x58\x40\x2c\xb1\xf4\x9e\xad\xb8\xbe\x7f\x45\x11\x2e\x0d\x43\x8b\xd5\x4c\x40\x2a\x39\x3c\x39\xa2\x65\x95\xfe\x4b\xfd\x6f\x1a\x04\x80\xec\x76\x0b\xce\xee\x75\x37\xee\xb5\x9d\xdf\x90\x8a\x80\x0e\x79\x2c\xd3\x20\x08\x3b\x25\x04\x10\xed\xe4\x37\x2e\xf9\x99\xfd\x16\x30\x1c\x4a\x39\x74\x6c\xe5\x2a\xa1\x43\x4a\x5e\x92\xf0\x50\x11\xbc\x34\x4b\x3b\x1c\xfb\x35\xf6\xbe\x9d\xff\xa7\xdb\x1a\xfa\xd3\xad\x1b\x7c\xfc\x49\x23\x80\x17\x07\x92\xe1\x18\xe6\x70\x7b\x58\x91\xdd\xbe\xb4\xe8\x48\x11\x1d\x49\x12\x1c\xe7\xe8\xd6\xb2\x48\x73\x24\x27\xba\x15\x63\x1c\xe1\x18\x9d\x56\x1d\xbd\x1c\x59\x8d\xf5\x20\x05\x09\x41\xfa\x6d\xb9\xf6\x3f\x04\x01\x3c\x5b\xac\xa0\xb8\x07\xc1\xa8\x7b\x4d\x1d\x81\x91\x46\x9d\xa8\x21\xec\x37\xe3\xc3\x20\x10\xbf\x6e\x70\xbf\x1f\xbe\x22\xb0\x51\x0c\x61\x65\x1c\xee\x76\x42\x31\x93\x43\xb5\x3a\x8a\x06\xbd\x73\xac\x75\xd6\x56\xda\x49\xaf\x95\xb6\x55\xdc\x11\x27\x90\xe3\x70\x9e\x66\x89\xd5\xaa\xb0\x4f\xd5\x9c\x67\x7d\x95\x5c\x27\xc9\x4c\x49\xe6\x91\x1d\x17\x77\xaf\xf1\xf9\x0c\x7c\x1b\x07\x27\xda\x87\xb9\xe3\x20\x0f\x3d\x06\x09\x69\x5a\x6f\x34\x8c\xb1\x87\x33\xba\x0c\x27\xe7\xa0\xd2\x4f\xca\x16\xe1\x19\x7a\xbf\x92\x1e\x7b\xcd\x5e\x68\x66\xe9\x91\x91\x9d\x2b\x02\x3a\xcd\x2e\x71\x4d\x3a\x37\x32\xbf\x0f\x1d\x4f\x20\x66\x98\x2d\x75\xa3\xf4\xaa\xe3\xe0\xdf\xa2\x5e\x68\x16\x1e\x2f\x8c\x85\x07\xd4\x1b\x2d\x35\x46\x7b\x3d\x62\xa8\x40\xe4\x98\x86\x1a\x44\xf6\x7e\x8f\x2a\xa4\x88\xbf\xad\x0e\x41\x35\xfc\xf0\x6d\x55\x88\x14\xa1\x57\x1d\x52\xe9\xf7\x2f\xab\x44\x5e\xec\x55\x22\xd8\x64\xae\x45\x4a\xa3\xfc\x0f\xab\x11\x3d\x7f\x43\x61\x7b\x20\xcd\xfb\xe7\x3e\xd4\x52\x96\x28\x25\xb4\x16\x26\x95\xd5\xba\x3d\x0b\x0a\x0e\x1c\xcd\x56\x9b\xe8\x55\x0c\xf7\xc3\xaa\x3c\xe1\x81\x8b\xa1\x7d\xb9\x7f\x5e\x60\x8b\x5b\x84\x2c\xb8\xbd\x16\x1c\x84\xa6\x02\x63\xc6\x79\xb4\x04\xf9\xe9\x1a\xaa\x8d\x92\x10\xa6\x24\xcf\x98\xea\xc7\x53\x5a\x14\x73\x01\x0c\x31\xcc\xfb\x5c\x0e\x9a\xda\x93\x64\x4b\x02\xa9\x92\x7d\x3e\xd7\xa9\xc9\x50\x9b\xe8\x96\x89\xe5\xce\x23\x42\x18\x15\x72\x60\xb4\xeb\xe8\x1e\x62\x30\x5a\xaf\x59\xca\xe2\x25\xb4\x87\x2c\xff\xcc\x58\xdc\xe2\xd4\x0e\x65\xa6\x14\xc5\x37\x2c\x14\x7c\xf4\x2a\x6e\x30\x80\x69\x7a\x5d\x60\x6f\x46\x92\x35\xa1\xb8\x36\x69\x6b\x08\x0e\x9d\x15\xa1\xd6\x64\xad\xc2\xda\x76\x55\xd7\x04\x43\x1e\x6a\x75\xb1\x50\x29\x86\x43\x75\xdc\x98\x77\xbf\x92\x56\xca\xa3\x57\xb1\xff\x07\x65\xac\x72\x14\xf4\xec\xee\x84\x9f\x97\xa7\x8e\xeb\x60\xe0\x74\xe0\xc2\x0b\x14\x4b\x85\xa2\x38\x42\x51\xd2\x51\x95\x28\x28\x72\xb4\xd4\x25\x15\xce\x0f\x5c\x2b\x13\x51\x3a\x74\xd6\x0e\x55\x26\xbe\xd3\x49\x1c\xea\x93\xf6\x53\x9a\x7e\xc5\x83\x1a\xbd\x9b\x99\xff\x1c\x6e\x93\xef\x20\xda\x90\x53\xf0\xb2\x13\xb6\xf9\x07\x7c\xd9\xb9\x54\x6f\x3a\x95\x7c\xb1\xc6\xa9\xdb\xba\x61\xa8\x1a\xac\x3c\xec\x55\x41\x1b\x8b\x2a\x45\xd7\x32\xff\x67\x51\xb9\x67\xe8\x8e\x74\x7b\x03\x8a\xd4\xde\x79\x44\xbe\x92\x76\xe6\xf6\x02\xd5\xc8\xed\xb3\xd6\x24\xa1\x35\xb9\x57\xd9\x7b\xdf\x2c\x41\x5c\x47\x18\x92\x04\x29\x82\x31\xd5\xcf\x9e\x91\x28\x68\xeb\xe9\x0b\x4b\xa6\xa0\xef\xcf\xd6\x74\xb1\x4a\x3c\x5e\xe0\xf2\xec\xb4\xec\xd7\x64\x08\xad\x72\x94\xec\xe5\x64\x67\xf3\x5a\x1a\xf7\x53\x9e\x6c\x6b\x16\xe2\x0d\xcd\x2b\x45\x95\xc1\x55\x17\x8a\x31\xa1\x80\x8c\x96\x24\x7f\xb8\x03\xf3\xa3\xbd\x2a\x13\x6a\xf7\x8e\xeb\xa2\x96\x5f\x34\xec\xc3\x47\x33\x58\x87\xf7\xf5\xbf\x2d\x14\x13\x18\xdc\xb0\xcd\x26\x19\xd8\x3c\x56\x00\xa7\xc7\x93\x6e\x10\x67\x66\x8d\x2e\x81\xa3\xc7\xa1\x03\x8a\xaf\x2e\xb5\xcb\xb7\x03\x79\xc7\xaa\x1b\xa2\xbc\x76\xed\x34\x85\xbc\xd9\xf5\xaa\x20\x10\x96\x68\xa8\x5a\xf2\x33\xdf\xce\x62\xef\xb3\x2e\x67\xb9\x98\xe3\x8e\x8b\x47\x01\xf2\x9d\x60\x65\x4d\x33\x9b\x42\x4e\xd4\x79\x21\xca\x49\xde\xc5\xeb\x28\x86\x0c\xcc\x09\xac\xae\x3f\x1d\xb0\x29\x78\x76\xb2\xbd\xa7\xa9\x13\x5a\xb9\x9d\x66\xdb\x5f\xc0\xf3\x75\xc3\x52\xf2\x23\x09\x5b\x0c\x4a\xb9\x35\x41\xd9\xbc\x92\x8d\xc9\x22\x5c\x34\x4c\x88\x9c\x0c\xf6\xc3\xae\x3e\xc6\xe3\x42\x40\xd8\xe2\x8f\xc5\x22\x23\xe8\x1f\x5b\xfa\x27\xd0\x3f\xf5\xa7\x36\xd5\x40\x37\x80\x26\x36\xc8\x84\x03\x34\x95\xfd\x33\x65\xb0\x2f\xa4\x75\xad\x9d\x5b\xb4\x76\x2d\x08\x4c\x8a\x93\xfc\x0c\xba\x93\xbd\xfd\xd4\x77\x2e\xd4\x77\x6e\x50\x9f\x9c\xd9\x08\x00\xed\xfa\x53\x53\x3f\x37\x2a\x50\xa8\x18\xf5\x77\xde\xa5\xbf\xf3\xba\xfe\xd0\x1b\xf6\x2e\xf4\xc1\xd6\x81\x93\xe3\x95\x57\xd1\xb8\x2d\x4b\x5d\xbe\x2a\xe3\x0b\x79\x0c\xaf\x64\x9d\x4a\xbe\x92\x2b\xac\x52\xf9\xaf\x8c\xd9\x43\xfc\x6a\x04\x59\x9f\x1d\xf4\xa3\xe1\x73\x39\x3b\xe8\x00\x02\xab\x4a\x96\x3e\x54\x3a\x91\x10\xaf\x11\x58\xb6\xef\x12\x54\x7f\xcf\x10\x0b\x64\x8c\x05\x5d\x41\x16\x74\x45\x59\xe0\x14\x66\x81\xc1\x4f\x34\x36\x6d\x71\xd6\xe2\x2a\xe7\x36\x57\xa9\x45\x5b\x8b\xb7\xec\x47\x9e\x4d\xb9\x3a\xa4\x67\x0c\x4a\xfd\x9e\x9b\xf4\x5b\x45\xa1\x49\xc1\x55\x04\x99\x35\xac\xc5\x61\x97\x82\xcf\x1b\x0a\xfe\x23\xc9\xa2\x3c\xba\x67\xba\x72\xcb\x36\xc8\x01\x5a\x3f\xda\xda\x71\x1d\xdf\x49\x14\xea\xb3\xa2\xb8\xfa\xbb\xda\xc6\xc1\x8f\x77\x10\xf7\x27\x35\x75\x97\x48\xae\x6a\x3c\x46\xa0\xe1\x06\x04\xdb\x57\x7a\x09\xec\xa3\xf0\x47\xed\xd3\x2f\xf5\xa3\x64\xa3\xf3\x27\x3c\xcc\xb8\x53\x32\x88\x83\x94\x13\x8f\xbc\x82\x1f\xfa\x54\xcf\x77\xd8\x35\x6d\xea\xa5\x6c\x73\xd7\x4b\x45\xd1\xd4\xcb\x8f\x0d\xbd\x94\xc8\x4e\xbd\x94\xc0\x5e\x7a\xa9\x6b\x44\xe6\x32\xa5\x6c\x4a\x2f\x65\x8b\x4d\x2f\xbf\xd2\x9d\xae\x12\x78\x9d\x31\x40\x31\xa8\x43\x7d\xdf\x07\xbd\xe0\xf1\xdd\x96\xee\xa2\x6d\xb1\xc5\xc3\x3b\x7c\xd5\x4e\xea\x1a\xc1\x07\xe4\x7c\xc2\x6f\x37\x34\x57\x5f\x7f\xbd\x95\x07\x56\x1e\xf9\x3d\x66\xef\x78\x61\x85\x5f\x03\xfe\x9e\xae\x58\x8a\x7b\x40\x9b\x56\x80\x51\x1f\x85\x4c\x70\xc2\xbb\xd9\xc8\x1b\x7b\x86\xe4\x1a\xbb\x27\x1e\x9d\x97\x40\x8a\x40\x73\xe5\xd3\x20\xf3\x42\x49\x18\x7a\x92\xd4\x38\x86\xbf\x8f\xf6\x26\xbe\x8d\x60\xd4\x4a\x01\xff\x0c\x45\x32\xe2\x4e\x4f\x8f\xc7\x46\x32\xe2\xa9\x7c\xf6\xf4\xd4\x33\xa5\x9d\x6a\x57\x13\x2c\x9c\xc7\x7a\xe4\x83\x3d\xf5\x1c\x4d\x31\xc2\x33\x00\xce\x61\x2e\xf9\x55\x0d\x16\x96\xca\x52\xff\xc2\xdb\xae\x7f\xd0\x18\x76\xde\xa4\x30\x9a\x0c\xa4\xf5\x96\xde\xaa\x94\x18\x1e\x9f\x3c\x90\x1b\x7d\xdf\x24\xdc\x1e\xc9\xe3\xea\x49\x11\xe9\x01\x13\xc5\xb5\x80\x89\xe2\x6f\x0a\x98\x28\xfe\x4e\x01\x13\xc5\x7d\x02\x06\x24\x46\xc9\x6d\x01\xc3\xbb\x79\xc0\x88\x27\xc7\x80\x91\xe0\x50\x12\xda\x03\xa6\x1d\x6c\x8e\x17\x23\xde\x12\x2d\x56\x1a\x37\xe7\xd5\x22\x05\x38\x94\x18\x47\x77\xc4\x8f\x7e\x2b\xdf\x82\xb7\x6e\x77\x6c\x23\x31\xb8\x23\xec\x7d\x59\x04\x5b\xcb\x7f\x40\x80\xcb\xc6\xa6\x5f\x75\xcc\x58\x6b\x41\xcf\xf7\xb7\x6d\x92\xe5\x04\xaf\x8f\x36\x0f\x98\x57\x45\xf7\x74\x83\x37\xad\x90\x5c\x7d\x01\xd2\x86\xbf\xd6\xb8\x5a\xf6\xb6\xc6\xe8\xe2\xd3\x6e\xc6\x0f\x01\x4f\xc8\xd7\xaf\xe5\xa3\xaf\x65\x07\x15\xbe\xff\x99\x40\x7d\x38\xfa\xca\xfe\x41\x76\x13\x1d\x36\x03\xbc\xb9\x29\xf2\x96\xd9\x46\xcf\x12\x1e\xd1\x2c\x1b\xb9\x5a\x6c\xe6\x4f\xcd\x34\x54\xd0\xec\x25\xa0\x25\x2b\x71\xe3\x82\x4a\x69\x32\xd2\x02\xba\xe7\x26\x88\x9b\xfc\xf4\x89\x3b\x0c\xf2\x7a\x8f\x5e\x89\x5f\xb0\x6b\x93\xfb\x6f\x00\x00\x00\xff\xff\xfa\x88\xea\xd8\xd7\x2f\x00\x00") +var _resourcesComparisonM = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xdc\x5a\xdd\x6f\xdb\x38\x12\x7f\xcf\x5f\xc1\xfa\x29\x49\x55\x25\xb6\xcf\xc5\xa6\x59\xe5\xb0\xd8\x4b\x0f\xc5\xed\x57\xda\xde\xcb\x19\x6e\x4c\xdb\x74\x22\xc4\x92\xb2\xfa\x48\x9d\xa6\xfe\xdf\x6f\x86\xa4\x28\x4a\x16\x29\x2a\xed\xe2\x80\x0b\x76\x2b\x8b\xfc\xcd\x70\x38\x1f\xe4\x0c\xa9\xdf\x8a\x88\xa5\xe1\xf2\xea\xcd\x9b\x22\xa3\x37\x8c\x04\x84\x0c\xe6\x65\xe3\x94\x6d\xef\xd3\xd9\x9c\xa4\x2c\x2f\xd2\x38\x23\xf3\x8f\x69\xc1\xe6\x24\x5c\x93\x39\xf6\xc0\xaf\x8c\x50\x12\x0b\x34\xf9\xb3\xa0\x71\x1e\xe6\x8f\x1e\x99\xbf\xa5\x9b\x0c\x80\x49\x7e\xcb\xd2\xcf\x61\xc6\xfc\xc1\xf9\x41\xc5\xf4\x7a\x46\xde\x04\xe4\xdd\x7a\x0a\x4d\x0b\x96\x5e\x4d\x7f\x9b\xb2\xd9\xcc\x23\xc8\xdd\x23\x9c\x76\x76\x7e\xf0\x53\x9e\xa7\xe1\xa2\xc8\x59\x36\x2d\x49\x67\x20\xde\xd3\x1f\x69\x92\xb3\x65\xce\x56\xbb\xf3\x83\x8f\x2c\xcb\x33\x25\x2e\xf6\x1e\x10\xf8\xbb\xfc\x10\x46\xf7\x1b\x76\xb9\xa5\xf8\xc8\xa6\xbc\x51\x74\xd0\x88\x21\xd1\x54\x8c\xa5\x64\x9a\xc0\xf8\x2d\x28\x2e\x8b\x06\xa3\x6e\xb0\x0f\x61\x8c\xd0\x56\x6c\x63\x60\x84\x8e\x00\xca\x91\xa0\x83\x4b\x3e\x25\x07\x89\x7f\x4e\x32\x4e\xe8\x24\xcf\x9f\x69\x6e\x14\xa8\x15\x2c\xc5\x3a\x56\x2f\xdb\x99\xe3\x7c\x90\xa0\x9a\xd0\x01\x18\xe9\x12\x1c\x63\x53\xf9\xd7\x60\xbe\xb9\xcd\x48\x10\x90\xf4\x36\x9b\x13\xf6\x40\x37\x05\x05\x23\x93\x3c\xe1\x0e\x40\x92\x54\xb8\x00\xba\x19\x43\x52\x70\x29\x6c\x0c\x63\xf5\x06\x6e\x77\x17\x27\x9f\x63\x74\x2b\xcd\x4d\xf8\x40\x06\x1f\xe1\x7d\x0e\x0e\xf2\x73\x12\x45\x2c\xce\xa7\x83\x4b\x70\x70\x96\x65\x61\x12\xcb\xc1\x50\xc0\x05\x13\x22\x91\xcf\xe1\x66\xa3\x64\x2f\x45\x7f\x33\xa8\x69\x08\xe4\x8a\x6f\xb8\x8e\x06\xd8\x3b\xf0\xc8\xe0\xec\x78\x1b\x04\xdb\xe3\xb3\x1a\x50\x0d\xf9\x21\x89\x58\x1e\x46\xa0\x0b\xa6\x0d\x1e\x51\x3e\x7d\x7c\xc4\x49\xae\x44\xf0\xb0\x91\x0b\xb9\x2a\x96\x8c\xac\x12\x20\xc3\x7e\x94\x95\xdc\xc2\xff\x20\x14\x28\x25\x27\x6b\xc0\x95\x9a\xf3\xc9\x3b\x98\xc7\x2d\x03\xed\x2e\x69\xc6\x32\x0f\x5f\x48\x96\xc3\x24\x50\x04\x31\xad\x94\x45\x34\x8c\x49\x11\x97\xf3\x5b\x99\x27\x76\x08\x33\x42\x5b\x0e\x4f\x8f\xb7\x47\xda\x0c\x87\xa7\xed\x53\x14\x66\x58\xc2\xbc\xc2\x15\x4b\x33\x10\x27\x67\x37\xf8\x83\xc6\x2b\xf2\x9e\x81\xdd\x41\x22\x9a\x13\x9a\x82\x84\x9b\x04\xe4\x64\x71\x52\xdc\xdc\xea\xca\x37\x4b\x33\x41\x09\xf2\xe8\x3e\x98\x74\x5a\x02\x51\xce\x30\xdf\x15\x77\x8a\x7f\xd6\x99\xd3\xb8\xb2\xca\x7b\x9a\x83\x85\xa1\xb5\x34\x8f\x79\x66\x3c\x22\x70\xa0\xbf\x9d\x8c\x83\x60\x7c\x32\xea\x94\x88\x03\x7f\x38\x79\x3d\xa8\x96\x96\xb7\x45\x8a\x0b\x72\xdb\xb2\xd8\xc2\x00\xd6\xe7\x2d\xb7\xed\xc8\x23\x8f\xb0\xa8\x7f\xf9\x32\xc3\xb7\x96\x66\xdb\x84\x95\x5f\x46\x34\x5f\xde\x92\x7b\x9a\xe7\x0c\xb6\x92\xc6\x4c\xcb\xc5\xe4\x69\xe8\x21\xdf\xf1\x0e\x07\xb8\xfe\x25\xcc\x72\x8f\xec\xb7\xb5\x0e\xf7\xf1\x16\x56\x85\x75\x11\x2f\x85\x4e\xe5\x32\x01\x51\xc4\xd2\x07\xb6\xe2\xfa\xfe\x15\x45\xb8\x32\x0c\x2d\xd6\x31\x01\xa9\xe4\xf0\xe4\x88\x96\xf5\xf9\x2f\xf5\xbf\x49\x10\x00\xb2\xdb\x2d\x38\xbb\xd7\xdd\xb8\xd7\x76\x7e\x87\x14\x95\xbc\xe0\x91\x4c\x83\x60\xd1\x29\x1f\x80\x68\x07\xb7\x51\xc9\xcd\xec\xb3\x87\x23\x04\x52\x0e\x1c\x59\x39\x0a\x20\x79\x29\x65\x44\xf0\x4b\xb3\x94\x87\x23\x5f\x63\xec\xdb\x39\x7f\xba\xd3\xb0\x9f\xee\x5c\xc0\xa3\x4f\x1a\x1c\x5e\xba\x09\x40\xf2\xbb\x8a\xe4\xee\xa5\x45\x27\x82\xe0\x58\xc0\x91\xff\xf1\x9d\x85\xff\x31\x87\x4b\xde\xc7\xc8\xbb\xd3\x76\xc3\x97\x43\xab\x51\x1e\xb9\x2f\x80\xc4\x91\x5c\xdb\x1f\x83\x00\x7e\x5a\xf4\xad\x38\x07\xc1\xb0\x7b\xcd\x1c\x82\x41\x86\x9d\xa8\x43\xd8\x4f\x46\x47\x41\x20\x9e\x6e\x70\xbf\x1f\xbe\x22\xb0\x51\x1c\xaa\x95\x6f\xdc\xb5\x20\x1e\xd5\xd6\xcf\x4e\x78\xb7\x90\x43\x11\x48\xf8\xaf\x08\x81\xb1\x59\x4e\x15\xeb\xfb\x54\xcd\xd9\xd5\xd7\xbe\x75\x92\x4c\x95\x64\x1e\xd9\x72\x71\xf7\x1a\x9f\xcf\xc0\xb7\x71\x70\xa2\x7d\x9c\x39\x0e\xf2\xd8\x63\x90\x05\x4d\xeb\x8d\x86\x31\xf6\x70\x46\x47\xe1\xe4\x1c\xf4\xa5\x92\x0e\x85\xe2\x7e\x61\xec\x35\x7b\x9e\x89\xc4\x23\x43\x3b\x4f\x04\x74\x9a\x5c\xe2\x9a\x74\x6e\x64\x7e\x1f\x3a\x9e\x12\x4c\x31\xff\xe9\x46\xe9\x15\xc4\xc1\xbf\x45\xee\xdf\x2c\x22\x5e\x18\x8b\x08\xa8\x1d\x5a\xea\x85\xf6\xda\xc2\x50\x4d\xc8\x31\x0d\xf5\x84\xec\xfd\x1e\x15\x45\x11\x7f\x5b\x4d\x81\x6a\xf8\xe1\xdb\x2a\x0a\x29\x42\xaf\x9a\xa2\xd2\xef\x5f\x53\x55\xbc\xa8\x57\x15\xf8\x6e\xae\x2b\x4a\x73\xfc\x0f\x2b\x0b\x3d\x17\x43\x61\x7b\x20\xcd\x7b\xe5\x3e\xd4\x52\x62\x28\x25\xb4\x16\x19\x95\xbd\xba\x7d\x0a\x8a\x07\x1c\xcd\x56\x67\xe8\x15\x09\xf7\xc0\xaa\xd4\xe0\x21\x8b\x41\x7d\xb5\x5f\xf5\xdb\x22\x16\x21\x73\x6e\xaf\x39\x07\xa1\xa9\xc0\x98\x71\x1e\x2e\x41\x7e\xba\x86\xca\xa1\x24\x84\x29\xc9\x93\xa2\xfa\x21\x93\x16\xbf\x5c\x00\x43\xf4\xf2\x3e\x97\xe3\xa2\xf6\x94\xd7\x92\x1a\xaa\xc4\x9d\xcf\x75\x62\x32\xd4\x26\xbc\x63\x62\xa1\xf3\x88\x10\x46\x05\x1b\x18\xed\x26\x7c\x80\xe8\x0b\xd7\x6b\x96\xb2\x78\x09\xed\x0b\x96\x7f\x66\x2c\x6e\x71\x6a\x87\x92\x51\x8a\xe2\x1b\x96\x08\x3e\x7a\x15\x37\x18\xba\x34\xbd\x29\xb0\x37\x23\xc9\x9a\x50\x5c\x95\xb4\xd5\x03\x87\xce\x8a\x85\xd6\x64\xad\xa8\xda\xf6\x52\xd7\xb4\x42\x1e\x4d\x75\xb1\x50\x89\x85\x43\xa5\xdb\x98\x77\xbf\xf2\x54\xca\xa3\x57\xa4\xff\x07\x25\xa9\x72\x14\xf4\xec\xee\xe4\x9e\x97\x9a\x8e\xeb\x60\xe0\x74\x78\xc2\x0b\x11\x4b\x25\xa2\x38\x42\x01\xd2\x51\x81\x28\x28\x72\xb4\xd4\x20\x15\xce\x0f\x5c\xab\x10\x51\x26\x74\xd6\x09\x55\xfe\xbd\xd5\x49\x1c\x6a\x91\xf6\x13\x97\x7e\x25\x83\x1a\xbd\x9b\x99\xff\x1c\x6e\xe3\xef\x20\xda\x21\xa7\x78\x3c\xe2\x1c\x44\x99\xb9\x75\xa9\xd4\x74\x2a\xf9\x62\x8d\x53\xb7\x75\xc3\x50\x2b\x58\x79\xd8\x6b\x81\x36\x16\x55\x72\xae\x65\xfc\xcf\xa2\x72\xcf\xcd\x1d\xe9\xf6\x06\x14\x49\xbd\xf3\x88\x7c\x25\xed\xcc\xea\x05\xaa\x91\xd5\x67\xad\x49\x42\x6b\x5a\xaf\xf2\xf6\xbe\x59\x82\xb8\x54\x30\x24\x09\x52\x04\x63\x92\x9f\x3d\x23\x51\xd0\xd6\xd3\x17\x96\x4c\x41\xdf\x9f\xad\xe9\x62\x95\x78\xbc\xc0\xe5\xd9\x69\xd9\xaf\xc9\xb0\xb0\xca\x51\xb2\x97\x93\x9d\xce\x6a\x69\xdc\x4f\x79\x12\xd5\x2c\xc4\x1b\x9a\x17\x83\x2a\x83\xab\xae\x05\x63\x42\x01\x19\x2e\x49\xfe\x78\x0f\xe6\x47\x7b\x55\x26\xd4\x6e\x0f\xd7\x45\x2d\xbf\x68\xd8\x87\x8f\x66\xb0\x0e\xef\xeb\x7f\xe7\x27\x26\x30\xb8\x65\x9b\x4d\x32\xb0\x79\xac\x00\x4e\x4e\xc6\xdd\x20\xce\xcc\x1a\x5d\x02\x47\x4f\x16\x0e\x28\xbe\xba\xd4\xae\xd0\x0e\xe4\x4d\xa9\x6e\x88\xf2\xf2\xb4\xd3\x14\xf2\x7e\xd6\xab\x82\x40\x58\xa2\xa1\x6a\xc9\xcf\x7c\xc7\x8a\xbd\xcf\xba\x62\xe5\x62\x8e\x3a\xae\x0f\x05\xc8\x77\x82\x95\x35\xcd\x74\x02\x39\x51\xe7\xb5\x26\x27\x79\x17\xaf\xc3\x18\x32\x30\x27\xb0\xba\xc4\x74\xc0\xa6\xe0\xd9\x49\xf4\x40\x53\x27\xb4\x72\x3b\xcd\xb6\xbf\x80\xe7\xeb\x86\xa5\xe4\x47\xb2\x68\x31\x28\xe5\xd6\x04\x65\xf3\x4a\x36\x26\xf3\xc5\xbc\x61\x42\xe4\x64\xb0\x1f\x76\xf5\x31\x1e\x17\x02\xc2\x16\x1f\x16\x8b\x0c\xa1\x7f\x64\xe9\x1f\x43\xff\xc4\x9f\xd8\x54\x03\xdd\x00\x1a\xdb\x20\x63\x0e\xd0\x54\xf6\xcf\x94\xc1\xbe\x90\xd6\xb5\x76\x61\xd1\xda\x8d\x20\x30\x29\x4e\xf2\x33\xe8\x4e\xf6\xf6\x53\xdf\x85\x50\xdf\x85\x41\x7d\x72\x66\x43\x00\xb4\xeb\x4f\x4d\xfd\xc2\xa8\x40\xa1\x62\xd4\xdf\x45\x97\xfe\x2e\xea\xfa\x43\x6f\xd8\xbb\x96\x07\x5b\x07\x4e\x8e\x57\x5e\x28\xe3\xb6\x2c\x75\xf9\xaa\x8c\x2f\xe4\x71\x78\x2d\xeb\x54\xf2\x95\x5c\x63\x95\xca\x9f\x32\x66\x8f\xf0\xdb\x0f\x64\x7d\x7e\xd0\x8f\x86\xcf\xe5\xfc\xa0\x03\x08\xac\x2a\x59\xfa\x50\xe9\x44\x42\xbc\x46\x60\xd9\xbe\x2e\x50\xfd\x3d\x43\x2c\x90\x31\x16\x74\x05\x59\xd0\x15\x65\x81\x53\x98\x05\x06\x3f\xd1\xd8\xb4\xc5\x59\x8b\xab\x5c\xd8\x5c\xa5\x16\x6d\x2d\xde\xb2\x1f\x79\x36\xe5\xea\x90\x9e\x31\x28\xf5\x7b\x61\xd2\x6f\x15\x85\x26\x05\x57\x11\x64\xd6\xb0\x16\x87\x5d\x0a\xbe\x68\x28\xf8\x8f\x24\x0b\xf3\xf0\x81\xe9\xca\x2d\xdb\x20\x07\x68\xfd\xf4\x6a\xcb\x75\x7c\x2f\x51\xa8\xcf\x8a\xe2\xfa\xef\x6a\x1b\x07\x3f\xde\x42\xdc\x9f\xd6\xd4\x5d\x22\xb9\xaa\xf1\x18\x81\x2e\x36\x20\xd8\xbe\xd2\x4b\x60\x1f\x85\x3f\x69\x1f\x70\xa9\x87\x92\x8d\xce\x76\x78\x98\x71\xaf\x64\x10\x07\x29\xa7\x1e\x79\x05\x0f\xba\xab\xe7\x3b\xec\x86\x36\xf5\x52\xb6\xb9\xeb\xa5\xa2\x68\xea\xe5\xc7\x86\x5e\x4a\x64\xa7\x5e\x4a\x60\x2f\xbd\xd4\x35\x22\x73\x99\x52\x36\xa5\x97\xb2\xc5\xa6\x97\x5f\xe9\x56\x57\x09\xbc\x4e\x19\xa0\x18\xd4\xa1\xbe\xef\x83\x5e\xf0\xf8\x2e\xa2\xdb\x30\x2a\x22\x3c\xbc\xc3\x57\xed\xa4\xae\x11\x7c\x40\xce\x27\xfc\x76\x43\x73\xf5\x0d\xd7\x5b\x79\x60\xe5\x91\xdf\x63\xf6\x8e\x17\x56\xf8\x4d\xdf\xef\xe9\x8a\xa5\xb8\x07\xb4\x69\x05\x18\xf5\x51\xc8\x18\x27\xbc\x9d\x0e\xbd\x91\x67\x48\xae\xb1\x7b\xec\xd1\x59\x09\xa4\x08\x34\x57\x3e\x0d\x32\x6f\x21\x09\x17\x9e\x24\x35\x8e\xe1\xef\xa3\xbd\xb1\x6f\x23\x18\xb6\x52\xc0\x7f\x86\x22\x19\x71\x67\x67\x27\x23\x23\x19\xf1\x54\x3e\x7b\x76\xe6\x99\xd2\x4e\xb5\xab\x09\x16\xce\x63\x3d\xf1\xc1\x76\x3d\x47\x53\x8c\xf0\x0c\x80\x73\x98\x49\x7e\x55\x83\x85\xa5\xb2\xd4\xbf\xf0\x9e\xeb\x1f\x34\x86\x9d\x37\x29\x8c\x26\x03\x69\xbd\xa5\xb7\x2a\x25\x86\x9f\x3b\x0f\xe4\x46\xdf\x37\x09\xb7\x47\xf2\xb4\xda\x29\x22\x3d\x60\xc2\xb8\x16\x30\x61\xfc\x4d\x01\x13\xc6\xdf\x29\x60\xc2\xb8\x4f\xc0\x80\xc4\x28\xb9\x2d\x60\x78\x37\x0f\x18\xf1\xcb\x31\x60\x24\x78\x21\x09\xed\x01\xd3\x0e\x36\xc7\x8b\x11\x6f\x89\x16\x2b\x8d\x9b\xf3\x6a\x91\x02\x1c\x4a\x8c\xa3\x3b\xe2\xa7\xbb\x95\x6f\xc1\x5b\xb7\x3b\xb6\x91\x18\xdc\x11\xf6\xbe\x2c\x84\xad\xe5\x3f\x20\xc0\x55\x63\xd3\xaf\x3a\xa6\xac\xb5\xa0\xe7\xfb\x5b\x94\x64\x39\xc1\xeb\xa3\xcd\x23\xe6\x55\xe1\x03\xdd\xe0\x1d\x2b\x24\x57\x5f\x80\xb4\xe1\xaf\x35\xae\x96\xbd\xad\x31\xba\xf8\x40\x9b\xf1\x43\xc0\x53\xf2\xf5\x6b\xf9\xd3\xd7\xb2\x83\x0a\xdf\xff\x4c\xa0\x3e\x1c\x7d\x65\xff\xac\xba\x89\x5e\x34\x03\xbc\xb9\x29\xf2\x96\xe9\x46\xcf\x12\x9e\xd0\x2c\x1b\xb9\x5a\x6c\x66\xbb\x66\x1a\x2a\x68\xf6\x12\xd0\x92\x95\xb8\x71\x41\xa5\x34\x19\x69\x01\xdd\x73\x13\xc4\x4d\x7e\xb2\xe3\x0e\x83\xbc\xde\xa3\x57\xe2\x77\xe8\xda\xe4\xfe\x1b\x00\x00\xff\xff\x98\xcd\xd7\x65\x9d\x2f\x00\x00") func resourcesComparisonMBytes() ([]byte, error) { return bindataRead( @@ -239,12 +239,12 @@ func resourcesComparisonM() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "resources/comparison.m", size: 12247, mode: os.FileMode(420), modTime: time.Unix(1514955078, 0)} + info := bindataFileInfo{name: "resources/comparison.m", size: 12189, mode: os.FileMode(420), modTime: time.Unix(1515483035, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _resourcesExpressionM = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xc4\x58\x5f\x6f\xdb\x36\x10\x7f\xcf\xa7\xe0\xfc\xd4\x2e\x9a\x53\xc9\x09\xba\xb6\x08\xd0\xa0\x4b\xd0\x02\x05\x16\x2c\xd9\x93\xa1\xc0\xb4\x7d\xb6\xb5\xc9\x94\x27\x51\x89\x33\xc3\xdf\x7d\x77\x14\xa9\x7f\x26\x6d\x69\x7b\x58\x81\xc6\x12\xf9\xbb\xe3\xdd\xef\x4e\xc7\x23\xbf\x02\x9f\x7f\xfc\x98\x67\x7c\x09\xec\x9a\x0d\x26\xf4\x3e\x86\xed\x26\x0d\x27\x2c\x05\x99\xa7\x22\x63\x72\x05\x6c\x85\xe3\x2c\x59\xa8\x67\x9a\x86\x2c\x8b\x12\x31\x1c\x7c\x3a\xbb\x91\x32\x8d\xa6\xb9\x84\x6c\x4c\xc2\x21\xaa\xd9\xdd\xa7\x89\x84\x99\x84\xf9\xfe\xd3\xd9\x23\x64\x32\x53\x7a\x69\xe6\x8c\xe1\xbf\xdb\x87\x68\xbd\x89\xe1\x76\xcb\xe9\x27\x1b\xab\xc1\x62\x82\xaf\x81\x04\xc6\x0b\x8f\x29\x53\x16\xe3\x6d\x18\x86\x9e\x05\xf1\xf0\xba\x9e\x26\xb1\x86\x6d\xed\x98\xef\x51\x26\x35\x62\xb7\xdd\xdb\x31\xf7\x71\x9e\x69\x0c\x67\xe7\x6c\x6a\x47\x7d\x13\x12\x96\x90\x6a\xa0\x6f\x07\xfd\x06\xdc\x18\xe4\x0f\x1d\x10\x2e\x91\xb7\x12\x16\x5c\xbc\xef\x84\xf3\x5d\xb8\x07\x24\x5f\x2c\x35\x6a\xe0\x0f\x4e\xfa\xa8\xfe\xbc\x51\x9e\xbe\x55\xdc\x86\x0a\x1f\x9e\x61\xa8\xce\x7e\x81\x8d\x5c\xd5\xd3\x41\x0d\xd8\xf2\x61\x4e\x13\x94\x10\x13\x9a\x9c\xb4\x12\x41\x89\x39\x32\x41\xcd\xf5\x49\x05\xdf\x63\x85\x19\x8b\x24\xb1\xbb\x17\x18\xc4\x0e\x21\x8e\x30\x97\x98\x29\x4f\x49\x93\xc7\xf0\xc1\x91\x5a\xa3\xda\x8a\xea\x7f\xe8\x00\x96\xa6\x8d\x4e\xcd\x0f\xaf\x4e\x21\x2e\x1c\x88\xa0\x6e\xcc\x6e\xb7\xdb\xef\xf7\xe1\xb8\x19\xb6\xef\x20\x96\xcd\xb8\x15\x23\xb6\xc0\xc5\x6a\xc6\x19\xb9\x42\xd0\x11\xba\x62\xb2\x4f\xec\x2e\x3d\xa6\x4d\xd9\xf9\x5e\xe0\x8d\xbc\x4b\x47\x78\xde\x55\x40\x07\xc2\xaf\x10\x57\x7b\xe3\xbe\xc7\x6e\xef\xf2\x14\xfd\x4a\x2d\x56\x7c\x49\xd6\x6b\x10\x72\x3c\x28\x3c\x65\x02\x60\xce\x44\x22\xd9\x8a\x3f\x03\xe3\x6c\x42\xe5\x61\xa2\x4a\xdb\xc7\x81\x8b\x7b\xbd\x26\x91\x8f\x16\x04\xcd\x44\x28\x57\x78\x6c\x30\xcb\x05\xe3\x32\x59\x47\xb3\x5a\xa9\x64\x51\xc6\xfe\x86\x34\x71\xac\x54\xf9\xcf\x4f\x11\x14\xb8\x72\xa9\x82\x0c\x56\x10\xc7\xc9\xa0\x91\x24\x0f\xf0\x57\x0e\x62\x06\xf5\x34\x31\x63\x63\x40\xdf\x00\xbd\x1d\x0e\x87\x98\x2f\xab\x24\x9e\x67\x48\x50\x8c\xfc\x90\x3f\x95\x17\x98\x43\x09\x9b\x22\x79\x39\xfa\x87\x25\x6a\xc6\xe3\xf8\x95\x45\x22\x83\x14\x13\x05\x1f\x70\x9a\x23\xc5\x18\x10\xb6\xc8\xc5\x4c\x1e\x6e\x12\x66\x4d\x47\x8e\x99\xe9\x0e\x59\x56\xb2\x5f\xca\xf0\x74\x99\xd3\x10\x1a\x9f\x1e\x37\x92\x3e\x85\x0d\x82\x84\x2c\xed\xcc\x1c\xa1\xa1\xd0\x73\x0c\xbd\xc7\x46\x98\x6f\xfa\xad\x64\x4e\x0d\xdb\x93\xe2\xd7\x5c\x66\xd1\x1c\xcc\xb6\x39\x4b\x70\x0f\xd9\x2a\x42\xcb\x25\x2b\x45\x2c\x99\xfe\x81\x4c\x64\x6c\x9e\xa8\x1c\x5d\x43\xba\x04\x87\x45\xcd\xc5\x0f\x8c\xb1\x7e\x3d\x97\x6d\x18\xee\x00\xe5\xc0\x95\xc7\x2e\x1d\x72\xc1\xbb\xb6\xe0\x8f\x2d\xb1\x3e\x5f\xe2\xed\x7a\x23\x5f\x59\x95\x77\x98\x6c\xc6\x6f\x58\x2c\xf0\x37\x7a\x06\x8c\xd5\x3c\xca\xf8\x66\x03\x3c\x3d\x12\x12\x1d\x8b\x4a\x55\xcd\x12\x95\x4a\xb6\x7a\x54\x79\xd2\xa0\xcd\xb1\xb7\xf6\xa7\x99\x2c\xaa\x25\xca\x91\x2c\x69\x8a\x1c\xe0\x8f\x80\xfd\x4b\xab\xf6\xc3\x78\x1e\xb5\xd0\x63\x0a\x64\xd3\xe4\x75\x52\x74\xc7\xe3\x0c\x0e\x92\xea\xfa\xba\x0b\x4d\x8f\x69\xde\x12\x0d\x5a\xa2\xfd\xd6\xfc\x2f\x8b\x36\x57\xad\x15\xcc\xdb\x67\x1e\xe7\x5c\x36\x0a\xa6\x19\x33\x3b\x2b\xe8\x77\x55\x17\xb1\xec\x9b\xf7\x39\xd2\x9a\xae\xab\x5d\x16\xab\xeb\x33\x08\xf6\xb2\xc2\x3f\xb9\x98\x63\x75\xa4\x1a\x4b\x25\x61\x1e\xa9\x42\xd0\x2a\x92\x66\x1d\x47\x91\x34\xd3\x5d\xb6\x62\xd5\x20\x2a\x02\x06\x5f\x71\x4d\xda\x92\x03\xcc\x15\x3f\x1c\x78\xac\x18\x29\x9d\xf2\x71\x9c\xc2\xaf\xe7\x1b\x2c\xb6\xd5\x50\xda\x34\x04\xb1\x27\xae\x54\xda\x67\x8f\x2a\x44\xbb\xde\x9f\x30\x0d\x73\x16\x7f\x82\x8e\x16\xd6\x45\x0e\x14\x97\x31\x77\x28\xae\xe5\x01\xe1\x1b\x47\x24\x92\xd7\xf1\xc7\x7d\xf1\xb9\xd8\x6f\xcc\x5e\x63\x52\x80\xb6\x7c\x57\x93\x45\x1a\x54\x64\xe9\xe1\x26\xc6\x26\xdf\x72\x60\xa2\xfc\xf8\x17\xe1\xbd\x7a\x1a\x55\x5e\xde\x27\x2f\x90\xd2\x47\x3c\x3a\xc5\xfe\xd5\xf0\x69\x34\x3c\x10\x1c\xa2\xe4\x30\x3c\xa4\xe3\x0e\x93\xbb\x4d\x09\x8d\xf5\xa5\x05\xfd\x8e\x14\x2c\x73\x13\x45\x7a\xbb\x90\x45\xb8\x9e\x84\x21\x57\xc6\x63\x65\x7d\x27\xba\x14\x53\x36\x31\x1b\x59\x77\x31\x97\x12\x44\x9d\x2b\x3d\x34\xa6\xe6\x0a\xa9\x5a\x14\xaf\x19\x4b\x72\xa9\x1a\xae\x0c\x1b\x14\x36\xa1\xa7\x36\x1b\x5a\xd2\x51\x13\xf4\x6c\x9f\xee\xdc\x98\xe2\x63\xe2\x57\xcf\xd6\x5e\xe6\x9b\xd8\xa0\x7d\xeb\x1c\x1b\x42\x6c\xff\x04\x1e\x4d\x55\x83\xeb\xd8\x9f\x77\xfe\xbe\xd2\x88\x2f\xf6\x82\xdc\x44\xe1\x3f\x7f\x4f\x87\x1b\x07\xb6\xe8\xc0\x0e\x24\x70\x78\xbf\xa7\x89\xe3\x72\xb8\x8f\x39\x45\x69\xce\x21\xfd\x13\x8a\xdb\x35\xd0\xcc\x71\x2d\x25\x77\x37\x78\x34\xc0\xb6\x86\xf2\x9e\x4e\x00\xd8\xda\x71\x8c\xb7\x48\xd8\x6c\xc5\x85\xb3\xc9\xb3\xaf\x70\xca\x02\x8f\xbd\x3b\xe2\x8a\x41\x77\x56\xe6\xb8\xe8\x28\xe0\x0a\xdc\x59\x95\x63\x4b\xef\x4b\xb1\x73\x7b\xef\xaf\xc8\xd1\xf2\x9e\x12\xe3\xe1\x69\xd5\x8e\x43\x9c\x82\x17\xe7\xf8\x42\x22\x74\x18\xdb\xc0\x54\x6a\x3f\x7c\xf8\xf0\x7f\x28\xf6\x4f\xaa\xf5\x9d\x4a\x1b\xd7\x14\x7c\xf1\x25\xc9\x85\x6c\xde\x54\xe8\xc1\x31\xb4\x6e\x2a\x66\x34\x4a\x1f\x4d\x0c\x78\x5e\x2f\xca\x22\x1c\xde\x57\x68\x71\xe7\x95\x85\x9e\xef\x53\x17\x47\x74\x90\x36\x66\xf1\x73\xc7\x95\xe0\xcf\x0d\xd4\x13\x75\x0e\xd3\xa7\x37\xb3\x1f\xde\x1e\xb9\xbf\x28\xe1\x0d\x62\x7e\x17\x65\xdf\x58\xa7\xa6\x36\xac\xc8\xd1\x27\x43\x33\x48\x6c\x10\x29\xd4\x76\x96\x07\x74\x8f\x21\x2f\x4c\xa6\xc0\x65\xb1\xab\xb6\x09\xab\x29\xad\xef\xaa\x58\xac\x90\x0d\x09\xb6\xdd\xb5\x26\xd2\x87\x45\xba\xf1\xc1\x2c\xa0\x4b\x96\xcf\x9f\xeb\xbe\xf8\xe7\x65\x2d\xa8\x5a\x0a\x63\x40\xbb\xad\x30\xe3\xd6\x2b\x8a\x66\x53\x11\xa9\x73\xbf\xbe\x01\xd0\x1d\x77\x0d\x21\x57\xc8\xc9\x4b\x92\x63\x5f\x25\xf9\x9f\x78\xfc\x8f\x39\x1e\xbb\x8b\x6e\x5c\x2d\x65\xeb\x3e\xcc\xf2\x5d\xb9\xaa\xcb\xf4\x21\xab\xe1\x6a\xd9\xf5\xf2\x73\x2c\x36\xc1\x79\xe0\x95\xed\x2a\xf7\x28\x1b\x59\x2f\xb8\xeb\x8e\xd3\xa1\x04\xf3\x98\xeb\x4e\x38\xa8\x9d\x97\xb8\x47\x77\xe3\xec\xe2\x42\x5f\x32\xd5\x23\xf8\x4f\x00\x00\x00\xff\xff\x51\x7e\x8e\x6f\x46\x18\x00\x00") +var _resourcesExpressionM = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xc4\x58\x5f\x6f\xe3\x36\x0c\x7f\xef\xa7\xd0\xf2\xd4\x5b\xbd\xb4\x76\x5a\xdc\xda\x43\x81\x2b\x6e\x2d\xee\x80\x03\x56\xac\xdd\x53\xe0\x22\x4a\xc2\x24\xde\x1c\x39\xb3\xe5\x36\x5d\x90\xef\x3e\x52\x96\xfc\x2f\x52\x12\x6f\x0f\x3b\xe0\x1a\x5b\xfa\x91\x22\x7f\xa4\x29\x4a\x5f\x81\x4f\x6f\x6e\xf2\x8c\xcf\x81\xdd\xb2\xde\x88\xde\x87\xb0\x5e\xa5\xe1\x88\xa5\x20\xf3\x54\x64\x4c\x2e\x80\x2d\x70\x9c\x25\x33\xf5\x4c\xd3\x90\x65\x51\x22\xfa\xbd\x4f\x27\x77\x52\xa6\xd1\x38\x97\x90\x0d\x49\x38\x44\x35\x9b\xc7\x34\x91\x30\x91\x30\xdd\x7e\x3a\x79\x86\x4c\x66\x4a\x2f\xcd\x9c\x30\xfc\x77\xff\x14\x2d\x57\x31\xdc\xaf\x39\xfd\x64\x43\x35\x58\x4c\xf0\x25\x90\xc0\x70\xe6\x31\x65\xca\x6c\xb8\x0e\xc3\xd0\xb3\x20\x9e\xde\x97\xe3\x24\xd6\xb0\xb5\x1d\xf3\x3d\xca\xa4\x46\x6c\xd6\x5b\x3b\xe6\x31\xce\x33\x8d\xe1\xec\x8c\x8d\xed\xa8\x6f\x42\xc2\x1c\x52\x0d\xf4\xed\xa0\xdf\x80\x1b\x83\xfc\xbe\x03\xc2\x25\xf2\x56\xc2\x82\xf3\x8f\x47\xe1\x7c\x17\xee\x09\xc9\x17\x73\x8d\xea\xf9\xbd\x83\x3e\xaa\x3f\xa7\xca\xd3\x0f\x8a\xdb\x50\xe1\xc3\x13\x0c\xd5\xc9\x2f\xb0\x92\x8b\x7a\x3a\xa8\x01\x5b\x3e\x4c\x69\x82\x12\x62\x44\x93\xa3\x56\x22\x28\x31\x47\x26\xa8\xb9\x2e\xa9\xe0\x7b\xac\x30\x63\x96\x24\x76\xf7\x02\x83\xd8\x20\xc4\x11\xe6\x12\x33\xe6\x29\x69\xf2\x18\x3e\x38\x52\x6b\x50\x5b\x51\xfd\x0f\x1d\xc0\xd2\xb4\xc1\xa1\xf9\xfe\xd5\x21\xc4\xb9\x03\x11\xd4\x8d\xd9\x6c\x36\xdb\xed\x36\x1c\x36\xc3\xf6\x1d\xc4\xbc\x19\xb7\x62\xc4\x16\xb8\x58\xcd\x38\x23\x57\x08\x3a\x42\x57\x4c\x76\x89\xdd\xa5\xc7\xb4\x29\x1b\xdf\x0b\xbc\x81\x77\xe9\x08\xcf\x45\x05\x74\x20\xfc\x0a\x71\xb5\x35\xee\x7b\xec\xfe\x21\x4f\xd1\xaf\xd4\x62\xc5\x97\x64\xb9\x04\x21\x87\xbd\xc2\x53\x26\x00\xa6\x4c\x24\x92\x2d\xf8\x2b\x30\xce\x46\x54\x1e\x46\xaa\xb4\xdd\xf4\x5c\xdc\xeb\x35\x89\x7c\xb4\x20\x68\x26\x42\xb9\xc2\x73\x83\x59\x2e\x18\x97\xc9\x32\x9a\xd4\x4a\x25\x8b\x32\xf6\x37\xa4\x89\x63\xa5\xca\x7f\x7e\x88\xa0\xc0\x95\x4b\x15\xa4\xb7\x80\x38\x4e\x7a\x8d\x24\x79\x82\xbf\x72\x10\x13\xa8\xa7\x89\x19\x1b\x02\xfa\x06\xe8\x6d\xbf\xdf\xc7\x7c\x59\x24\xf1\x34\x43\x82\x62\xe4\x87\xfc\xa9\xbc\xc0\x1c\x4a\xd8\x18\xc9\xcb\xd1\x3f\x2c\x51\x13\x1e\xc7\xef\x2c\x12\x19\xa4\x98\x28\xf8\x80\xd3\x1c\x29\xc6\x80\xb0\x59\x2e\x26\x72\x77\x93\x30\x6b\x3a\x72\xcc\x4c\x1f\x91\x65\x25\xfb\xa5\x0c\x4f\xe7\x39\x0d\xa1\xf1\xe9\x7e\x23\xe9\x53\x58\x21\x48\xc8\xd2\xce\xcc\x11\x1a\x0a\x3d\xc7\xd0\x7b\x6c\x80\xf9\xa6\xdf\x4a\xe6\xd4\xb0\x3d\x29\x7e\xcd\x65\x16\x4d\xc1\x6c\x9b\x93\x04\xf7\x90\xb5\x22\xb4\x5c\xb2\x52\xc4\x92\xf1\x1f\xc8\x44\xc6\xa6\x89\xca\xd1\x25\xa4\x73\x70\x58\xd4\x5c\x7c\xc7\x18\xeb\xd7\x73\xd9\x86\xe1\x0e\x50\x0e\x5c\x79\xec\xd2\x21\x17\x5c\xb4\x05\x7f\x6c\x89\x75\xf9\x12\xef\x97\x2b\xf9\xce\xaa\xbc\xc3\x64\x33\x7e\xc3\x6c\x86\xbf\xd1\x2b\x60\xac\xa6\x51\xc6\x57\x2b\xe0\xe9\x9e\x90\xe8\x58\x54\xaa\x6a\x96\xa8\x54\xb2\xd5\xa3\xca\x93\x06\x6d\x8e\xbd\xb5\x3b\xcd\x64\x51\x2d\x51\xf6\x64\x49\x53\x64\x07\xbf\x07\xec\x5f\x5a\xb5\xef\xc6\x73\xaf\x85\x1e\x53\x20\x9b\x26\xef\x28\x45\x0f\x3c\xce\x60\x27\xa9\x6e\x6f\x8f\xa1\xe9\x39\xcd\x5b\xa2\x41\x4b\xb4\xdb\x9a\xff\x65\xd1\xe6\xaa\xb5\x82\x79\xff\xca\xe3\x9c\xcb\x46\xc1\x34\x63\x66\x67\x05\xfd\xae\xea\x22\x96\x7d\xf3\x3e\x45\x5a\xd3\x65\xb5\xcb\x62\x75\x7d\x05\xc1\xde\x16\xf8\x27\x17\x53\xac\x8e\x54\x63\xa9\x24\x4c\x23\x55\x08\x5a\x45\xd2\xac\xe3\x28\x92\x66\xfa\x98\xad\x58\x35\x88\x8a\x80\xde\x57\x5c\x93\xb6\xe4\x00\x73\xc5\x0f\x7b\x1e\x2b\x46\x4a\xa7\x7c\x1c\xa7\xf0\xeb\xf9\x06\x8b\x6d\x35\x94\x36\x0d\x41\xec\x89\x2b\x95\xf6\xd9\xbd\x0a\xd1\xae\x8f\x07\x4c\xc3\x9c\xc5\x9f\xe0\x48\x0b\xeb\x22\x3b\x8a\xcb\x98\x3b\x14\xd7\xf2\x80\xf0\x8d\x23\x12\xc9\xeb\xf8\xe3\xbe\xf8\x5a\xec\x37\x66\xaf\x31\x29\x40\x5b\xbe\xab\xc9\x22\x0d\x2a\xb2\xf4\x70\x17\x63\x93\x6f\x39\x30\x51\x7e\xfc\x8b\xf0\x5e\xbd\x0c\x2a\x2f\x1f\x93\x37\x48\xe9\x23\x1e\x1c\x62\xff\xaa\xff\x32\xe8\xef\x08\xf6\x51\xb2\x1f\xee\xd2\xf1\x80\xc9\xdd\xa6\x84\xc6\xba\xd2\x82\x7e\x47\x0a\x96\xb9\x89\x22\xbd\xc7\x90\x45\xb8\x8e\x84\x9d\x22\x59\x1f\x8c\xcf\xca\xfe\xa3\x08\x3b\x55\x64\x59\x05\x6d\x84\x3d\xc4\x5c\x4a\x10\x75\xbe\xf4\xd0\x90\x1a\x2c\xa4\x6b\x56\xbc\x66\x2c\xc9\xa5\x6a\xba\x32\x6c\x52\xd8\x88\x9e\xda\x8c\x68\x49\x47\x5d\xd0\xb3\x5d\x3a\x74\x63\x8a\x8f\xc9\x5f\x3d\x5b\xfb\x99\x6f\x62\x85\xf6\x2d\x73\x6c\x0a\xb1\x05\x14\x78\x3c\x55\x4d\xae\x63\x8f\xde\xf8\xdb\x4a\x23\xbe\xd8\x8b\x72\x13\x85\xff\xfc\x2d\x1d\x70\x1c\xd8\xa2\x0b\xdb\x91\xc0\xe1\xed\x96\x26\xf6\xcb\xe1\x5e\xe6\x14\xa5\x39\x87\xf4\x4f\x28\x6e\xd7\x40\x33\xfb\xb5\x94\xdc\xdd\xe1\xf1\x00\x5b\x1b\xca\x7d\x3a\x05\x60\x7b\xc7\x31\xde\x22\x61\x93\x05\x17\xce\x46\xcf\xbe\xc2\x21\x0b\x3c\x76\xb1\xc7\x15\x83\x3e\x5a\x99\xe3\xb2\xa3\x80\x2b\xf0\xd1\xaa\x1c\xdb\x7a\x57\x8a\x9d\x5b\x7c\x77\x45\x8e\xb6\xf7\x90\x18\x0f\x0f\xab\x76\x1c\xe4\x14\xbc\x38\xcb\x17\x12\xa1\xc3\xd8\x06\xa6\x52\x7b\x7d\x7d\xfd\x7f\x28\xf6\x0f\xaa\xf5\x9d\x4a\x1b\x57\x15\x7c\xf6\x25\xc9\x85\x6c\xde\x56\xe8\xc1\x21\xb4\x6e\x2b\x26\x34\x4a\x1f\x4d\x0c\x78\x66\x2f\xca\x22\xec\xde\x59\x68\x71\xe7\xb5\x85\x9e\xef\x52\x17\x07\x74\x98\x36\x66\xf1\x33\xc7\xb5\xe0\xcf\x0d\xd4\x0b\x75\x0f\xe3\x97\xd3\xc9\x0f\x1f\xf6\xdc\x61\x94\xf0\x06\x31\xbf\x8b\xb2\x77\xac\x53\x53\x1b\x56\xe4\xe8\xd3\xa1\x19\x24\x36\x88\x14\x6a\x3d\xcb\x43\xba\xc7\x90\x17\x26\x53\xe0\xb2\xd8\x59\xdb\x84\xd5\x94\xd6\x77\x56\x2c\x56\xc8\x86\x04\xdb\x0e\x5b\x13\xe9\xc2\x22\xdd\xfa\x60\x16\xd0\x45\xcb\xe7\xcf\x75\x5f\xfc\xb3\xb2\x16\x54\x6d\x85\x31\xa0\xdd\x5a\x98\x71\xeb\x35\x45\xb3\xb1\x88\xd4\xd9\x5f\xdf\x02\xe8\xae\xbb\x86\x90\x0b\xe4\xe4\x2d\xc9\xb1\xb7\x92\xfc\x4f\x60\xab\x98\xe3\xd1\xbb\xe8\xc8\xd5\x52\xb6\x0e\xc4\x2c\x7f\x2c\x57\x75\x99\x2e\x64\x35\x5c\x2d\x3b\x5f\x7e\x86\xc5\x26\x38\x0b\xbc\xb2\x65\xe5\x1e\x65\x23\xeb\x04\x77\xdd\x73\x3a\x94\x60\x1e\x73\xdd\x0d\x07\xb5\x33\x13\xf7\xe8\x7e\x9c\x9d\x9f\xeb\x8b\xa6\x7a\x04\xff\x09\x00\x00\xff\xff\x76\xff\x74\xb2\x4a\x18\x00\x00") func resourcesExpressionMBytes() ([]byte, error) { return bindataRead( @@ -259,7 +259,7 @@ func resourcesExpressionM() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "resources/expression.m", size: 6214, mode: os.FileMode(420), modTime: time.Unix(1506497089, 0)} + info := bindataFileInfo{name: "resources/expression.m", size: 6218, mode: os.FileMode(420), modTime: time.Unix(1515483055, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -1184,7 +1184,7 @@ func resourcesSpecialsymsM() (*asset, error) { return a, nil } -var _resourcesStringM = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x94\x55\xdf\x6f\xa3\x46\x10\x7e\xf7\x5f\x31\xe2\xe9\xee\x44\x1c\xc7\xea\x3d\xc4\x57\x47\xaa\xaa\xa4\x75\x75\xd5\xb5\x8a\xa5\x3e\x20\xce\x2c\x30\x0e\xf4\x60\xd7\xdd\x5d\xf2\xcb\xf1\xff\xde\x99\x05\x63\x48\x4c\x7b\x8e\x22\x1b\x66\xbf\xf9\xf5\xcd\xb7\xe3\xa5\xba\xb5\x3a\x97\x77\xb3\x59\x65\xc4\x1d\xc2\x1c\xbc\x68\x6f\x0b\xf0\x71\xa3\x7d\x58\x2b\x5d\x86\x11\x24\x4a\xde\xa3\xb6\x06\x22\x36\x47\x90\x4b\xab\x40\x80\x71\x50\xa8\x0c\x7f\x6e\xe8\xd9\xf2\x43\x89\x36\x53\x29\x44\xec\x1b\x8d\xbd\x4f\xa3\x36\xa6\x58\x85\x30\x9b\xc3\xe1\xdd\x87\x2f\x95\xdd\x54\xf6\x86\xd3\x7c\x1a\xfd\x64\xc9\x1e\x57\x16\x4d\xb0\xc7\x84\x54\xd5\xf6\x0f\xad\x2c\x26\x16\xd3\x1d\x05\x43\x63\x4d\x5b\x26\x9f\x8e\x80\xfe\xae\x6f\xf3\x72\x53\xe0\xf5\xa3\xe0\x2f\x13\x38\x63\x7d\x20\x4a\x64\xa7\xc0\x13\x5f\xa7\x9e\x7f\xc8\xfe\x4b\xa1\x62\x51\x44\x64\xf5\x61\x21\xf7\x55\x84\xfe\x31\xd7\x5f\xb1\x28\x14\xfc\xa5\x74\x91\x52\x88\xde\x2b\x9c\x9f\xb7\x31\x43\xe7\x1b\x8e\xa8\xce\x51\x6d\xf9\x4d\xe5\xb2\xcb\xaf\xb9\x80\x1f\xaf\xc0\x4c\xf9\x73\x3c\x1e\x13\xb5\x42\xc2\xdf\x04\x22\x3a\x8b\xdc\x58\x50\xeb\x86\x56\xd3\xb2\x4c\x2f\x05\x36\x56\xe6\xf3\xdd\x07\xaa\x14\x8c\x2a\x11\x34\x0a\xa3\x24\xd8\x2c\x27\xb8\x81\xb5\xa0\x08\xc4\x3b\x1c\x92\x07\x4b\x11\x17\x18\x78\x8f\x54\xf7\xf6\x9b\x3f\x9d\x4c\x26\xbb\xf0\x7c\xfc\x99\x72\x9d\x5d\xdd\xe2\x3f\x15\xca\x04\xc3\x0f\xef\x29\x2a\x31\x0f\xa6\x50\x0f\xdf\x13\xa1\xf6\xe8\x80\xb6\x42\xdf\x99\xd5\x6a\xb5\x0b\xbd\x19\x78\x9d\x03\xb6\x87\x9e\xef\xf0\x4b\xae\x53\x57\xd4\x8d\xae\xa4\x81\xb2\x4a\x32\x57\x33\x92\xd4\x36\x9a\xc6\x11\x17\x4f\x10\x63\x22\x2a\x83\x90\x5b\x10\xf7\x2a\x4f\x8d\x73\xfd\xa2\x53\xd4\x34\x59\xb3\x30\xbf\x0b\x9b\x64\x7f\x92\xb5\x93\x85\xb9\x5b\x71\x53\x4e\x61\xaf\x0e\xe0\x7c\x0c\xaf\x1a\xee\x89\xed\x00\x77\x72\xbb\x29\x84\x25\x65\x4a\x5c\xa4\x48\x92\xb6\x4f\x3e\xbc\x55\xe0\xc1\xe7\x24\x0d\x1e\x13\x92\xc7\x62\xf0\xa0\xfe\xaa\x8f\x8e\xab\x70\xb1\x06\x31\x27\xb5\xda\x0c\x49\x2f\x5f\xa7\xf3\x1f\x38\x46\xcf\xea\x82\xfc\x8f\xc4\x5d\x9e\x79\x1f\x49\x10\x66\x49\xc0\xd9\x15\xf4\xef\x43\x2d\x69\x1f\xae\x6f\x2a\x4d\x29\xf4\x91\xf6\x7e\x56\x65\x49\x4c\x05\xde\x32\x43\xe8\x30\x13\xb1\x9a\xa5\x22\x75\xd2\x4d\xa5\xc9\x93\x3b\x60\xb9\xb1\x4f\x8d\x98\x67\x03\x7d\x52\x57\x9d\x09\xf6\xae\x64\x9b\x8a\xba\xee\x65\xd2\x98\x60\x7e\x8f\x06\x84\x7c\xa2\x9c\xf2\xac\x59\x4e\x24\xbf\x8a\x3d\x8c\x5f\xa7\xa7\xfd\x45\x22\xca\xe9\xd2\xa4\x8a\xd0\x54\x1d\xe0\xbd\x28\x2a\x61\x71\xa8\x9c\xc3\x90\x3e\xf6\x0a\x6b\x0e\x7c\xf8\x78\xbc\x44\xa7\xf6\x75\x25\x13\xcb\xe9\xac\xf8\x46\xf9\x22\xd6\x61\x74\xa8\x0a\x84\x81\x07\x0a\x33\x94\x5b\xc4\x49\x9f\x8d\xad\x27\x78\xe8\x31\x7f\x24\xde\x2e\xec\xae\x9c\x85\x5c\xe7\x8f\xdd\x6d\xe3\x0c\xcd\x2a\x37\xb8\x09\x99\x26\xee\xdf\x65\x6e\x77\x39\xfd\x13\xcc\xed\x7a\x78\xc8\x6d\xc6\x50\xa1\x85\xa5\x2d\x10\xd1\x63\x04\x0f\xac\xac\xe6\x37\x00\x53\xe8\xec\x7e\x5e\x47\x9d\x8b\xe4\xf2\x0d\xac\x6c\x77\x76\xd2\x5d\x79\x17\x0b\xfd\xb2\xae\x9e\x9f\x5f\x9e\xf3\xcd\x7b\x8f\x55\xc9\xed\xac\x95\xda\x0b\x9b\x00\x3e\x34\xcf\x0c\x6c\x5f\xc8\x81\x24\xeb\xbd\x78\xe1\x7f\xaf\xe7\xcf\x28\xef\x6c\xd6\xa5\xac\x6b\x0f\x8c\x63\xcc\x56\x5a\xd6\xe2\x2d\x9c\xd9\xed\xe8\x57\x9d\x77\xdd\x1c\x01\x3c\x67\xde\x9b\xc3\xbb\xa3\x06\x9f\xc2\x48\x2b\xbf\xa6\xbc\x46\x80\xe1\xdb\xbe\x96\x24\xb6\xb7\x5d\xb1\x35\xa0\x8b\xb0\xa5\xd2\x34\xad\x38\x94\xe9\x8e\x3a\xac\x95\x49\x23\xad\xe2\xe6\xd2\x0c\x36\xc8\x11\x06\xe6\x7b\x00\x9c\x34\xe4\xac\x95\xb7\xab\xce\xcb\x9a\x3b\xb5\xbd\xf0\xe1\x62\x77\xfc\xe7\xf8\x28\x7e\xe2\xf0\x03\xc1\x26\xc3\xc1\x5a\xd0\x50\x15\x7d\xca\xeb\x93\x70\x28\xd8\x50\x9c\xe9\x89\xdd\x10\xfe\xf2\xf2\x72\xb0\x9f\xfd\x71\x67\xf2\xff\x06\x00\x00\xff\xff\xe9\xa8\x0d\xc3\xce\x09\x00\x00") +var _resourcesStringM = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x94\x55\x5f\x6f\xa3\x46\x10\x7f\xf7\xa7\x18\xf1\xd4\x9e\x88\xe3\x58\xbd\x87\xf8\xea\x48\x55\x95\xb4\xae\xae\xba\x56\xb1\xd4\x07\xc4\x99\x05\xc6\x81\x06\x76\xdd\xdd\x25\xff\x1c\x7f\xf7\xce\x2c\x18\x43\x62\xda\x73\x14\xd9\x30\xf3\x9b\xff\xbf\x19\x2f\xd5\xad\xd5\xb9\xbc\x9b\xcd\x2a\x23\xee\x10\xe6\xe0\x45\x7b\x59\x80\x4f\x1b\xed\xc3\x5a\xe9\x32\x8c\x20\x51\xf2\x01\xb5\x35\x10\xb1\x38\x82\x5c\x5a\x05\x02\x8c\x83\x42\x65\xf8\x73\x43\xcf\x96\x1f\x4a\xb4\x99\x4a\x21\x62\xdb\x68\xec\x7d\x1a\xb5\x3e\xc5\x2a\x84\xd9\x1c\x0e\xef\x3e\x7c\xa9\xec\xa6\xb2\x37\x1c\xe6\xd3\xe8\x27\x4b\xf2\xb8\xb2\x68\x82\x3d\x26\xa4\xac\xb6\x7f\x68\x65\x31\xb1\x98\xee\xc8\x19\x1a\x6b\xda\x34\x59\x3b\x02\xfa\xbb\xbe\xcd\xcb\x4d\x81\xd7\x4f\x82\xbf\x4c\xe0\x84\xb5\x42\x94\xc8\x46\x81\x27\xbe\x4e\x3d\xff\x10\xfd\x97\x42\xc5\xa2\x88\x48\xea\xc3\x42\xee\xb3\x08\xfd\x63\xa6\xbf\x62\x51\x28\xf8\x4b\xe9\x22\x25\x17\xbd\x57\x38\x3f\x6f\x7d\x86\xce\x36\x1c\x51\x9e\xa3\x5a\xf2\x9b\xca\x65\xb7\xbf\xe6\x02\x7e\xbc\x02\x33\xe5\xcf\xf1\x78\x4c\xad\x15\x12\xfe\x26\x10\xb5\xb3\xc8\x8d\x05\xb5\x6e\xda\x6a\xda\x2e\xd3\x4b\x81\x8d\x94\xfb\xf9\xdd\x07\xca\x14\x8c\x2a\x11\x34\x0a\xa3\x24\xd8\x2c\x27\xb8\x81\xb5\x20\x0f\xd4\x77\x38\x04\x0f\x96\x22\x2e\x30\xf0\x9e\x28\xef\xed\xbd\x3f\x9d\x4c\x26\xbb\xf0\x7c\xfc\x99\x62\x9d\x5d\xdd\xe2\x3f\x15\xca\x04\xc3\x0f\xdf\x93\x57\xea\x3c\x98\x42\x3d\x7e\x8b\x87\xda\xa2\x03\xda\x0a\x7d\x67\x56\xab\xd5\x2e\xf4\x66\xe0\x75\x14\x2c\x0f\x3d\xdf\xe1\x97\x9c\xa7\xae\xa8\x1a\x5d\x49\x03\x65\x95\x64\x2e\x67\x24\xaa\x6d\x34\x8d\x23\x2e\x9e\x21\xc6\x44\x54\x06\x21\xb7\x20\x1e\x54\x9e\x1a\x67\xfa\x45\xa7\xa8\x69\xb2\x66\x61\x7e\x17\x36\xc9\xfe\x24\x69\x27\x0a\xf7\x6e\xc5\x45\x39\x86\xbd\x51\xc0\xf9\x18\xde\x14\xdc\x23\xdb\x01\xee\xe8\x76\x53\x08\x4b\xcc\x94\xb8\x48\x91\x28\x6d\x9f\x7d\x78\xcf\xc0\x83\xcd\x49\x1c\x3c\x46\x24\x8f\xc9\xe0\x41\xfd\x55\xab\x8e\xb3\x70\xb1\x06\x31\x27\xb6\xda\x0c\x89\x2f\x5f\xa7\xf3\x1f\xd8\x47\x4f\xea\x9c\xfc\x0f\xc5\x5d\x9c\x79\x1f\x49\x10\xee\x92\x80\xb3\x2b\xe8\xef\x43\x4d\x69\x1f\xae\x6f\x2a\x4d\x21\xf4\x91\xf2\x7e\x56\x65\x49\x9d\x0a\xbc\x65\x86\xd0\xe9\x4c\xc4\x6c\x96\x8a\xd8\x49\x9b\x4a\x93\x27\x73\xc0\x72\x63\x9f\x1b\x32\xcf\x06\xea\xa4\xaa\x3a\x13\xec\xad\x64\x1b\x8a\xaa\xee\x45\xd2\x98\x60\xfe\x80\x06\x84\x7c\xa6\x98\xf2\xac\x39\x4e\x44\xbf\x8a\x2d\x8c\x5f\x87\xa7\xfb\x45\x24\xca\x69\x69\x52\x45\x68\xca\x0e\xf0\x41\x14\x95\xb0\x38\x94\xce\x61\x48\x1f\x7b\x89\x35\x0a\x1f\x3e\x1e\x4f\xd1\xb1\x7d\x5d\xc9\xc4\x72\x38\x2b\xee\x29\x5e\xc4\x3c\x8c\x0e\x59\x81\x30\xf0\x48\x6e\x86\x62\x8b\x38\xe9\x77\x63\xeb\x09\x1e\x7a\xcc\x1f\x89\xb7\x0b\xbb\x27\x67\x21\xd7\xf9\x53\xf7\xda\x38\x41\x73\xca\x0d\x6e\x42\x6e\x13\xd7\xef\x22\xb7\xb7\x9c\xfe\x09\xe6\x6e\x3d\x3c\xe6\x36\x63\xa8\xd0\xc2\xd2\x15\x88\xe8\x31\x82\x47\x66\x56\xf3\x1b\x80\x29\x74\x6e\x3f\x9f\xa3\xce\x22\xb9\x78\x03\x27\xdb\xe9\x4e\xda\x95\x58\xe8\xd7\x75\xf5\xf2\xf2\xfa\x92\x6f\x3c\xe6\x24\x17\xb3\x56\x6a\x4f\x6b\xd2\xfb\xd0\x3c\x33\xae\x7d\x21\x3c\x11\xd6\x7b\xf5\xc2\xff\x3e\xce\x9f\x51\xde\xd9\xac\xdb\xb0\xae\x3c\x30\xae\x5f\xb6\xd2\xb2\xa6\x6e\xe1\xc4\xee\x42\xbf\xa9\xbb\x6b\xe6\xca\xe7\x29\xf3\xd5\x1c\xbe\x1c\x35\xf8\x94\x7e\xb4\xe4\x6b\xd2\x6b\xe8\x17\xbe\xaf\x6b\x49\x54\x7b\x5f\x15\x4b\x03\x5a\x83\x2d\xa5\xa6\xe9\xc0\xa1\x4c\x77\x54\x61\xcd\x4b\x1a\x68\x15\x37\x2b\x33\x58\x20\x7b\x18\x98\xee\x01\x70\xd2\x88\xb3\x96\xdc\x2e\x3b\x2f\x6b\x36\x6a\x7b\xe1\xc3\xc5\xee\xf8\x8f\xf1\x51\xfc\xc4\xe1\x07\x9c\x4d\x86\x9d\xb5\xa0\xa1\x2c\xfa\x2d\xaf\x35\xe1\x90\xb3\x21\x3f\xd3\x13\xab\x21\xfc\xe5\xe5\xe5\x60\x3d\x7b\x75\x67\xf2\xff\x06\x00\x00\xff\xff\x78\xee\x44\x8d\xcc\x09\x00\x00") func resourcesStringMBytes() ([]byte, error) { return bindataRead( @@ -1199,7 +1199,7 @@ func resourcesStringM() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "resources/string.m", size: 2510, mode: os.FileMode(420), modTime: time.Unix(1506290062, 0)} + info := bindataFileInfo{name: "resources/string.m", size: 2508, mode: os.FileMode(420), modTime: time.Unix(1515483250, 0)} a := &asset{bytes: bytes, info: info} return a, nil } diff --git a/expreduce/resources/comparison.m b/expreduce/resources/comparison.m index 745894d..c956f8a 100644 --- a/expreduce/resources/comparison.m +++ b/expreduce/resources/comparison.m @@ -21,7 +21,7 @@ EComment["Expressions known to be equal will evaluate to True:"], EStringTest["True", "9*x==x*9"], EComment["Sometimes expressions may or may not be equal, or Expreduce does not know how to test for equality. In these cases, the statement will remain unevaluated:"], - EStringTest["((9*x)) == ((10*x))", "9*x==x*10"], + EStringTest["(9*x == 10*x)", "9*x==x*10"], EComment["Equal considers Integers and Reals that are close enough to be equal:"], EStringTest["5", "tmp=5"], EStringTest["True", "tmp==5"], @@ -42,33 +42,33 @@ EStringTest["True", "5==tmp"], EStringTest["False", "tmp==6"], EStringTest["False", "6==tmp"], - EStringTest["(a) == (b)", "a==b"], + EStringTest["(a == b)", "a==b"], EStringTest["True", "a==a"], - EStringTest["(a) == (2)", "a==2"], - EStringTest["(2) == (a)", "2==a"], - EStringTest["(2) == ((a + b))", "2==a+b"], - EStringTest["(2.) == (a)", "2.==a"], - EStringTest["(2^k) == (a)", "2^k==a"], - EStringTest["(2^k) == (2^a)", "2^k==2^a"], - EStringTest["(2^k) == ((2 + k))", "2^k==k+2"], - EStringTest["(k) == ((2*k))", "k==2*k"], - EStringTest["((2*k)) == (k)", "2*k==k"], + EStringTest["(a == 2)", "a==2"], + EStringTest["(2 == a)", "2==a"], + EStringTest["(2 == a + b)", "2==a+b"], + EStringTest["(2. == a)", "2.==a"], + EStringTest["(2^k == a)", "2^k==a"], + EStringTest["(2^k == 2^a)", "2^k==2^a"], + EStringTest["(2^k == 2 + k)", "2^k==k+2"], + EStringTest["(k == 2*k)", "k==2*k"], + EStringTest["(2*k == k)", "2*k==k"], EStringTest["True", "1+1==2"], - EStringTest["(y) == ((b + m*x))", "y==m*x+b"], + EStringTest["(y == b + m*x)", "y==m*x+b"], EStringTest["True", "1==1."], EStringTest["True", "1.==1"], EStringTest["True", "(x==2)==(x==2)"], EStringTest["True", "(x==2.)==(x==2)"], EStringTest["True", "(x===2.)==(x===2)"], - EStringTest["(If[(xx) == (3), yy, zz]) == (If[(xx) == (2), yy, zz])", "If[xx == 3, yy, zz] == If[xx == 2, yy, zz]"], + EStringTest["(If[xx == 3, yy, zz] == If[xx == 2, yy, zz])", "If[xx == 3, yy, zz] == If[xx == 2, yy, zz]"], EStringTest["True", "(1 == 2) == (2 == 3)"], EStringTest["False", "(1 == 2) == (2 == 2)"], ESameTest[True, foo[x == 2, y, x] == foo[x == 2, y, x]], ESameTest[True, foo[x == 2, y, x] == foo[x == 2., y, x]], ESameTest[foo[x == 2, y, x] == foo[x == 2., y, y], foo[x == 2, y, x] == foo[x == 2., y, y]], ESameTest[foo[x == 2, y, x] == bar[x == 2, y, x], foo[x == 2, y, x] == bar[x == 2, y, x]], - EStringTest["(foo[x, y, z]) == (foo[x, y])", "foo[x, y, z] == foo[x, y]"], - EStringTest["(foo[x, y, z]) == (foo[x, y, 1])", "foo[x, y, z] == foo[x, y, 1]"], + EStringTest["(foo[x, y, z] == foo[x, y])", "foo[x, y, z] == foo[x, y]"], + EStringTest["(foo[x, y, z] == foo[x, y, 1])", "foo[x, y, z] == foo[x, y, 1]"], ESameTest[True, foo[x, y, 1] == foo[x, y, 1]], ESameTest[True, foo[x, y, 1.] == foo[x, y, 1]], ESameTest[True, Equal[test]], @@ -83,7 +83,7 @@ EComment["Expressions known to be unequal will evaluate to True:"], EStringTest["True", "9 != 8"], EComment["Sometimes expressions may or may not be unequal, or Expreduce does not know how to test for inequality. In these cases, the statement will remain unevaluated:"], - EStringTest["((9*x)) != ((10*x))", "9*x != x*10"], + EStringTest["(9*x != 10*x)", "9*x != x*10"], EComment["Unequal considers Integers and Reals that are close enough to be equal:"], EStringTest["5", "tmp=5"], EStringTest["False", "tmp != 5"], diff --git a/expreduce/resources/expression.m b/expreduce/resources/expression.m index a371351..739a57c 100644 --- a/expreduce/resources/expression.m +++ b/expreduce/resources/expression.m @@ -98,8 +98,8 @@ Attributes[HoldForm] = {HoldAll, Protected}; Tests`HoldForm = { ESimpleExamples[ - EStringTest["5^3", "HoldForm[Power[5, 3]]"], - EStringTest["5.^3.", "HoldForm[Power[5., 3.]]"] + EStringTest["(5^3)", "HoldForm[Power[5, 3]]"], + EStringTest["(5.^3.)", "HoldForm[Power[5., 3.]]"] ] }; diff --git a/expreduce/resources/string.m b/expreduce/resources/string.m index 94b3b67..042078f 100644 --- a/expreduce/resources/string.m +++ b/expreduce/resources/string.m @@ -34,7 +34,7 @@ Attributes[Infix] = {Protected}; Tests`Infix = { ESimpleExamples[ - ESameTest["(bar|fuzz|zip)", Infix[foo[Global`bar, Global`fuzz, Global`zip], "|"] // ToString] + ESameTest["bar|fuzz|zip", Infix[foo[Global`bar, Global`fuzz, Global`zip], "|"] // ToString] ] }; diff --git a/expreduce/string.go b/expreduce/string.go index f35e3f6..4d8f601 100644 --- a/expreduce/string.go +++ b/expreduce/string.go @@ -78,6 +78,10 @@ func ToStringInfixAdvanced(parts []Ex, delim string, thisHead string, surroundEa return false, "" } var buffer bytes.Buffer + addParens := needsParens(thisHead, params.previousHead) + if addParens { + buffer.WriteString("(") + } if !surroundEachArg { buffer.WriteString(start) } @@ -102,6 +106,9 @@ func ToStringInfixAdvanced(parts []Ex, delim string, thisHead string, surroundEa if !surroundEachArg { buffer.WriteString(end) } + if addParens { + buffer.WriteString(")") + } return true, buffer.String() }