Skip to main content

NODE_TYPES

Constant NODE_TYPES 

Source
pub const NODE_TYPES: &str = "[\n  {\n    \"type\": \"absolute_value\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"addition\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"arccosecant\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"arccosine\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"arccotangent\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"arcsecant\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"arcsine\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"arctangent\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"case\",\n    \"named\": true,\n    \"fields\": {\n      \"function\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"interval\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"cases\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"case\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"coeff_variable\",\n    \"named\": true,\n    \"fields\": {\n      \"coefficient\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"-\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"variable\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"cosecant\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"cosine\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"cotangent\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"derivative\",\n    \"named\": true,\n    \"fields\": {\n      \"function\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"variable\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"division\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"equals\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"exponential\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"expression\",\n    \"named\": true,\n    \"root\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"absolute_value\",\n          \"named\": true\n        },\n        {\n          \"type\": \"addition\",\n          \"named\": true\n        },\n        {\n          \"type\": \"arccosecant\",\n          \"named\": true\n        },\n        {\n          \"type\": \"arccosine\",\n          \"named\": true\n        },\n        {\n          \"type\": \"arccotangent\",\n          \"named\": true\n        },\n        {\n          \"type\": \"arcsecant\",\n          \"named\": true\n        },\n        {\n          \"type\": \"arcsine\",\n          \"named\": true\n        },\n        {\n          \"type\": \"arctangent\",\n          \"named\": true\n        },\n        {\n          \"type\": \"coeff_variable\",\n          \"named\": true\n        },\n        {\n          \"type\": \"cosecant\",\n          \"named\": true\n        },\n        {\n          \"type\": \"cosine\",\n          \"named\": true\n        },\n        {\n          \"type\": \"cotangent\",\n          \"named\": true\n        },\n        {\n          \"type\": \"derivative\",\n          \"named\": true\n        },\n        {\n          \"type\": \"division\",\n          \"named\": true\n        },\n        {\n          \"type\": \"equals\",\n          \"named\": true\n        },\n        {\n          \"type\": \"exponential\",\n          \"named\": true\n        },\n        {\n          \"type\": \"lagrange\",\n          \"named\": true\n        },\n        {\n          \"type\": \"less_than\",\n          \"named\": true\n        },\n        {\n          \"type\": \"less_than_equals\",\n          \"named\": true\n        },\n        {\n          \"type\": \"limit\",\n          \"named\": true\n        },\n        {\n          \"type\": \"logarithm\",\n          \"named\": true\n        },\n        {\n          \"type\": \"modulo\",\n          \"named\": true\n        },\n        {\n          \"type\": \"more_than\",\n          \"named\": true\n        },\n        {\n          \"type\": \"more_than_equals\",\n          \"named\": true\n        },\n        {\n          \"type\": \"natural_logarithm\",\n          \"named\": true\n        },\n        {\n          \"type\": \"not_equals\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nth_root\",\n          \"named\": true\n        },\n        {\n          \"type\": \"number\",\n          \"named\": true\n        },\n        {\n          \"type\": \"piecewise\",\n          \"named\": true\n        },\n        {\n          \"type\": \"plus_minus\",\n          \"named\": true\n        },\n        {\n          \"type\": \"product\",\n          \"named\": true\n        },\n        {\n          \"type\": \"rolle\",\n          \"named\": true\n        },\n        {\n          \"type\": \"secant\",\n          \"named\": true\n        },\n        {\n          \"type\": \"sine\",\n          \"named\": true\n        },\n        {\n          \"type\": \"square_root\",\n          \"named\": true\n        },\n        {\n          \"type\": \"subtraction\",\n          \"named\": true\n        },\n        {\n          \"type\": \"symbol\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tangent\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"interval\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"left_bracket\",\n          \"named\": true\n        },\n        {\n          \"type\": \"right_bracket\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"lagrange\",\n    \"named\": true,\n    \"fields\": {\n      \"function\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"interval\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"interval\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"less_than\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"less_than_equals\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"limit\",\n    \"named\": true,\n    \"fields\": {\n      \"function\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"point\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          }\n        ]\n      },\n      \"side\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"side\",\n            \"named\": true\n          }\n        ]\n      },\n      \"variable\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"logarithm\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"base\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"modulo\",\n    \"named\": true,\n    \"fields\": {\n      \"dividend\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"divisor\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"more_than\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"more_than_equals\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"natural_logarithm\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"not_equals\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"nth_root\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"degree\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"piecewise\",\n    \"named\": true,\n    \"fields\": {\n      \"cases\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"cases\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"plus_minus\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"product\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"rolle\",\n    \"named\": true,\n    \"fields\": {\n      \"function\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"interval\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"interval\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"secant\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"sine\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"square_root\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"subtraction\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"tangent\",\n    \"named\": true,\n    \"fields\": {\n      \"argument\": {\n        \"multiple\": true,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"(\",\n            \"named\": false\n          },\n          {\n            \"type\": \")\",\n            \"named\": false\n          },\n          {\n            \"type\": \"absolute_value\",\n            \"named\": true\n          },\n          {\n            \"type\": \"addition\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arccotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arcsine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"arctangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"coeff_variable\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosecant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cosine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cotangent\",\n            \"named\": true\n          },\n          {\n            \"type\": \"derivative\",\n            \"named\": true\n          },\n          {\n            \"type\": \"division\",\n            \"named\": true\n          },\n          {\n            \"type\": \"equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponential\",\n            \"named\": true\n          },\n          {\n            \"type\": \"lagrange\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"less_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"limit\",\n            \"named\": true\n          },\n          {\n            \"type\": \"logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"modulo\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than\",\n            \"named\": true\n          },\n          {\n            \"type\": \"more_than_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"natural_logarithm\",\n            \"named\": true\n          },\n          {\n            \"type\": \"not_equals\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nth_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"number\",\n            \"named\": true\n          },\n          {\n            \"type\": \"piecewise\",\n            \"named\": true\n          },\n          {\n            \"type\": \"plus_minus\",\n            \"named\": true\n          },\n          {\n            \"type\": \"product\",\n            \"named\": true\n          },\n          {\n            \"type\": \"rolle\",\n            \"named\": true\n          },\n          {\n            \"type\": \"secant\",\n            \"named\": true\n          },\n          {\n            \"type\": \"sine\",\n            \"named\": true\n          },\n          {\n            \"type\": \"square_root\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subtraction\",\n            \"named\": true\n          },\n          {\n            \"type\": \"symbol\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tangent\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"!=\",\n    \"named\": false\n  },\n  {\n    \"type\": \"(\",\n    \"named\": false\n  },\n  {\n    \"type\": \")\",\n    \"named\": false\n  },\n  {\n    \"type\": \"*\",\n    \"named\": false\n  },\n  {\n    \"type\": \"+\",\n    \"named\": false\n  },\n  {\n    \"type\": \"+-\",\n    \"named\": false\n  },\n  {\n    \"type\": \",\",\n    \"named\": false\n  },\n  {\n    \"type\": \"-\",\n    \"named\": false\n  },\n  {\n    \"type\": \"->\",\n    \"named\": false\n  },\n  {\n    \"type\": \"/\",\n    \"named\": false\n  },\n  {\n    \"type\": \"<\",\n    \"named\": false\n  },\n  {\n    \"type\": \"<=\",\n    \"named\": false\n  },\n  {\n    \"type\": \"=\",\n    \"named\": false\n  },\n  {\n    \"type\": \">\",\n    \"named\": false\n  },\n  {\n    \"type\": \">=\",\n    \"named\": false\n  },\n  {\n    \"type\": \"abs\",\n    \"named\": false\n  },\n  {\n    \"type\": \"arccos\",\n    \"named\": false\n  },\n  {\n    \"type\": \"arccot\",\n    \"named\": false\n  },\n  {\n    \"type\": \"arccsc\",\n    \"named\": false\n  },\n  {\n    \"type\": \"arcsec\",\n    \"named\": false\n  },\n  {\n    \"type\": \"arcsin\",\n    \"named\": false\n  },\n  {\n    \"type\": \"arctan\",\n    \"named\": false\n  },\n  {\n    \"type\": \"cos\",\n    \"named\": false\n  },\n  {\n    \"type\": \"cot\",\n    \"named\": false\n  },\n  {\n    \"type\": \"csc\",\n    \"named\": false\n  },\n  {\n    \"type\": \"d/d\",\n    \"named\": false\n  },\n  {\n    \"type\": \"lagrange\",\n    \"named\": false\n  },\n  {\n    \"type\": \"left_bracket\",\n    \"named\": true\n  },\n  {\n    \"type\": \"lim\",\n    \"named\": false\n  },\n  {\n    \"type\": \"log\",\n    \"named\": false\n  },\n  {\n    \"type\": \"number\",\n    \"named\": true\n  },\n  {\n    \"type\": \"piecewise\",\n    \"named\": false\n  },\n  {\n    \"type\": \"right_bracket\",\n    \"named\": true\n  },\n  {\n    \"type\": \"rolle\",\n    \"named\": false\n  },\n  {\n    \"type\": \"root\",\n    \"named\": false\n  },\n  {\n    \"type\": \"sec\",\n    \"named\": false\n  },\n  {\n    \"type\": \"side\",\n    \"named\": true\n  },\n  {\n    \"type\": \"sin\",\n    \"named\": false\n  },\n  {\n    \"type\": \"symbol\",\n    \"named\": true\n  },\n  {\n    \"type\": \"tan\",\n    \"named\": false\n  },\n  {\n    \"type\": \"{\",\n    \"named\": false\n  },\n  {\n    \"type\": \"}\",\n    \"named\": false\n  }\n]";
Expand description

The content of the node-types.json file for this grammar.