{ "traits": [ { "name": "functor", "parents": [] }, { "name": "applicative", "parents": [ "functor" ] } ], "parameters": [ { "name": "0", "free": true, "order": 0, "traits": [] }, { "name": "1", "free": true, "order": 1, "traits": [ "applicative" ] }, { "name": "2", "free": false, "order": 0, "traits": [] }, { "name": "3", "free": false, "order": 1, "traits": [ "applicative" ] } ], "blocks": [ { "count": 1, "in": [ { "parameter": "0", "children": [] } ], "out": [ { "parameter": "1", "children": [ { "parameter": "0", "children": [] } ] } ] } ], "start": [ { "parameter": "2", "children": [] } ], "goal": [ { "parameter": "3", "children": [ { "parameter": "2", "children": [] } ] } ] }