{"efVersion":"0.11.5","efModuleName":["Control","Monad","ST"],"efExports":[{"TypeRef":["ST",[]]},{"TypeRef":["STRef",[]]},{"ValueRef":{"Ident":"modifySTRef"}},{"ValueRef":{"Ident":"newSTRef"}},{"ValueRef":{"Ident":"pureST"}},{"ValueRef":{"Ident":"readSTRef"}},{"ValueRef":{"Ident":"runST"}},{"ValueRef":{"Ident":"writeSTRef"}}],"efImports":[{"eiModule":["Prim"],"eiImportType":{"Implicit":[]},"eiImportedAs":null},{"eiModule":["Control","Monad","Eff"],"eiImportType":{"Explicit":[{"PositionedDeclarationRef":[{"start":[3,27],"name":"/Users/michael/projects/purescript-confusables/bower_components/purescript-st/src/Control/Monad/ST.purs","end":[3,30]},[],{"TypeRef":["Eff",[]]}]},{"PositionedDeclarationRef":[{"start":[3,32],"name":"/Users/michael/projects/purescript-confusables/bower_components/purescript-st/src/Control/Monad/ST.purs","end":[3,43]},[],{"KindRef":"Effect"}]},{"PositionedDeclarationRef":[{"start":[3,45],"name":"/Users/michael/projects/purescript-confusables/bower_components/purescript-st/src/Control/Monad/ST.purs","end":[3,52]},[],{"ValueRef":{"Ident":"runPure"}}]}]},"eiImportedAs":null}],"efFixities":[],"efTypeFixities":[],"efDeclarations":[{"EDType":{"edTypeName":"ST","edTypeKind":{"tag":"FunKind","contents":[{"tag":"NamedKind","contents":[["Prim"],"Type"]},{"tag":"NamedKind","contents":[["Control","Monad","Eff"],"Effect"]}]},"edTypeDeclarationKind":"ExternData"}},{"EDType":{"edTypeName":"STRef","edTypeKind":{"tag":"FunKind","contents":[{"tag":"NamedKind","contents":[["Prim"],"Type"]},{"tag":"FunKind","contents":[{"tag":"NamedKind","contents":[["Prim"],"Type"]},{"tag":"NamedKind","contents":[["Prim"],"Type"]}]}]},"edTypeDeclarationKind":"ExternData"}},{"EDValue":{"edValueName":{"Ident":"modifySTRef"},"edValueType":{"tag":"ForAll","contents":["r",{"tag":"ForAll","contents":["h",{"tag":"ForAll","contents":["a",{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","ST"],"STRef"]},{"tag":"TypeVar","contents":"h"}]},{"tag":"TypeVar","contents":"a"}]}]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"tag":"TypeVar","contents":"a"}]},{"tag":"TypeVar","contents":"a"}]}]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","Eff"],"Eff"]},{"tag":"RCons","contents":["st",{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","ST"],"ST"]},{"tag":"TypeVar","contents":"h"}]},{"tag":"TypeVar","contents":"r"}]}]},{"tag":"TypeVar","contents":"a"}]}]}]},null]},null]},null]}}},{"EDValue":{"edValueName":{"Ident":"newSTRef"},"edValueType":{"tag":"ForAll","contents":["r",{"tag":"ForAll","contents":["h",{"tag":"ForAll","contents":["a",{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"tag":"TypeVar","contents":"a"}]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","Eff"],"Eff"]},{"tag":"RCons","contents":["st",{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","ST"],"ST"]},{"tag":"TypeVar","contents":"h"}]},{"tag":"TypeVar","contents":"r"}]}]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","ST"],"STRef"]},{"tag":"TypeVar","contents":"h"}]},{"tag":"TypeVar","contents":"a"}]}]}]},null]},null]},null]}}},{"EDValue":{"edValueName":{"Ident":"pureST"},"edValueType":{"tag":"ForAll","contents":["a",{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"tag":"ForAll","contents":["h",{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","Eff"],"Eff"]},{"tag":"RCons","contents":["st",{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","ST"],"ST"]},{"tag":"TypeVar","contents":"h"}]},{"tag":"REmpty"}]}]},{"tag":"TypeVar","contents":"a"}]},0]}]},{"tag":"TypeVar","contents":"a"}]},1]}}},{"EDValue":{"edValueName":{"Ident":"readSTRef"},"edValueType":{"tag":"ForAll","contents":["r",{"tag":"ForAll","contents":["h",{"tag":"ForAll","contents":["a",{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","ST"],"STRef"]},{"tag":"TypeVar","contents":"h"}]},{"tag":"TypeVar","contents":"a"}]}]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","Eff"],"Eff"]},{"tag":"RCons","contents":["st",{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","ST"],"ST"]},{"tag":"TypeVar","contents":"h"}]},{"tag":"TypeVar","contents":"r"}]}]},{"tag":"TypeVar","contents":"a"}]}]},null]},null]},null]}}},{"EDValue":{"edValueName":{"Ident":"runST"},"edValueType":{"tag":"ForAll","contents":["r",{"tag":"ForAll","contents":["a",{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"tag":"ForAll","contents":["h",{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","Eff"],"Eff"]},{"tag":"RCons","contents":["st",{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","ST"],"ST"]},{"tag":"TypeVar","contents":"h"}]},{"tag":"TypeVar","contents":"r"}]}]},{"tag":"TypeVar","contents":"a"}]},null]}]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","Eff"],"Eff"]},{"tag":"TypeVar","contents":"r"}]},{"tag":"TypeVar","contents":"a"}]}]},null]},null]}}},{"EDValue":{"edValueName":{"Ident":"writeSTRef"},"edValueType":{"tag":"ForAll","contents":["r",{"tag":"ForAll","contents":["h",{"tag":"ForAll","contents":["a",{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","ST"],"STRef"]},{"tag":"TypeVar","contents":"h"}]},{"tag":"TypeVar","contents":"a"}]}]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Prim"],"Function"]},{"tag":"TypeVar","contents":"a"}]},{"tag":"TypeApp","contents":[{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","Eff"],"Eff"]},{"tag":"RCons","contents":["st",{"tag":"TypeApp","contents":[{"tag":"TypeConstructor","contents":[["Control","Monad","ST"],"ST"]},{"tag":"TypeVar","contents":"h"}]},{"tag":"TypeVar","contents":"r"}]}]},{"tag":"TypeVar","contents":"a"}]}]}]},null]},null]},null]}}}],"efSourceSpan":{"start":[1,1],"name":"/Users/michael/projects/purescript-confusables/bower_components/purescript-st/src/Control/Monad/ST.purs","end":[64,30]}}