mps-coderules/coderules/languages/jetbrains.mps.lang.coderules/runtime/models/jetbrains.mps.lang.coderule...

823 lines
44 KiB
Plaintext

<?xml version="1.0" encoding="UTF-8"?>
<model ref="r:969c74a0-af0a-4247-9dda-0da7708b8c0d(jetbrains.mps.lang.coderules.memoizer)">
<persistence version="9" />
<languages>
<use id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage" version="12" />
</languages>
<imports>
<import index="wyt6" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.lang(JDK/)" />
<import index="18ew" ref="6ed54515-acc8-4d1e-a16c-9fd6cfe951ea/java:jetbrains.mps.util(MPS.Core/)" />
<import index="33ny" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.util(JDK/)" />
</imports>
<registry>
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
<concept id="1215693861676" name="jetbrains.mps.baseLanguage.structure.BaseAssignmentExpression" flags="nn" index="d038R">
<child id="1068498886297" name="rValue" index="37vLTx" />
<child id="1068498886295" name="lValue" index="37vLTJ" />
</concept>
<concept id="1202948039474" name="jetbrains.mps.baseLanguage.structure.InstanceMethodCallOperation" flags="nn" index="liA8E" />
<concept id="1465982738277781862" name="jetbrains.mps.baseLanguage.structure.PlaceholderMember" flags="nn" index="2tJIrI" />
<concept id="1188207840427" name="jetbrains.mps.baseLanguage.structure.AnnotationInstance" flags="nn" index="2AHcQZ">
<reference id="1188208074048" name="annotation" index="2AI5Lk" />
</concept>
<concept id="1188208481402" name="jetbrains.mps.baseLanguage.structure.HasAnnotation" flags="ngI" index="2AJDlI">
<child id="1188208488637" name="annotation" index="2AJF6D" />
</concept>
<concept id="1197027756228" name="jetbrains.mps.baseLanguage.structure.DotExpression" flags="nn" index="2OqwBi">
<child id="1197027771414" name="operand" index="2Oq$k0" />
<child id="1197027833540" name="operation" index="2OqNvi" />
</concept>
<concept id="1197029447546" name="jetbrains.mps.baseLanguage.structure.FieldReferenceOperation" flags="nn" index="2OwXpG">
<reference id="1197029500499" name="fieldDeclaration" index="2Oxat5" />
</concept>
<concept id="1145552977093" name="jetbrains.mps.baseLanguage.structure.GenericNewExpression" flags="nn" index="2ShNRf">
<child id="1145553007750" name="creator" index="2ShVmc" />
</concept>
<concept id="1070462154015" name="jetbrains.mps.baseLanguage.structure.StaticFieldDeclaration" flags="ig" index="Wx3nA" />
<concept id="1070475354124" name="jetbrains.mps.baseLanguage.structure.ThisExpression" flags="nn" index="Xjq3P" />
<concept id="1070475926800" name="jetbrains.mps.baseLanguage.structure.StringLiteral" flags="nn" index="Xl_RD">
<property id="1070475926801" name="value" index="Xl_RC" />
</concept>
<concept id="1182160077978" name="jetbrains.mps.baseLanguage.structure.AnonymousClassCreator" flags="nn" index="YeOm9">
<child id="1182160096073" name="cls" index="YeSDq" />
</concept>
<concept id="1081236700938" name="jetbrains.mps.baseLanguage.structure.StaticMethodDeclaration" flags="ig" index="2YIFZL" />
<concept id="1164991038168" name="jetbrains.mps.baseLanguage.structure.ThrowStatement" flags="nn" index="YS8fn">
<child id="1164991057263" name="throwable" index="YScLw" />
</concept>
<concept id="1070534058343" name="jetbrains.mps.baseLanguage.structure.NullLiteral" flags="nn" index="10Nm6u" />
<concept id="1070534934090" name="jetbrains.mps.baseLanguage.structure.CastExpression" flags="nn" index="10QFUN">
<child id="1070534934091" name="type" index="10QFUM" />
<child id="1070534934092" name="expression" index="10QFUP" />
</concept>
<concept id="1068390468200" name="jetbrains.mps.baseLanguage.structure.FieldDeclaration" flags="ig" index="312cEg" />
<concept id="1068390468198" name="jetbrains.mps.baseLanguage.structure.ClassConcept" flags="ig" index="312cEu" />
<concept id="1068431474542" name="jetbrains.mps.baseLanguage.structure.VariableDeclaration" flags="ng" index="33uBYm">
<child id="1068431790190" name="initializer" index="33vP2m" />
</concept>
<concept id="1109279763828" name="jetbrains.mps.baseLanguage.structure.TypeVariableDeclaration" flags="ng" index="16euLQ" />
<concept id="1109279851642" name="jetbrains.mps.baseLanguage.structure.GenericDeclaration" flags="ng" index="16eOlS">
<child id="1109279881614" name="typeVariableDeclaration" index="16eVyc" />
</concept>
<concept id="1109283449304" name="jetbrains.mps.baseLanguage.structure.TypeVariableReference" flags="in" index="16syzq">
<reference id="1109283546497" name="typeVariableDeclaration" index="16sUi3" />
</concept>
<concept id="1068498886296" name="jetbrains.mps.baseLanguage.structure.VariableReference" flags="nn" index="37vLTw">
<reference id="1068581517664" name="variableDeclaration" index="3cqZAo" />
</concept>
<concept id="1068498886292" name="jetbrains.mps.baseLanguage.structure.ParameterDeclaration" flags="ir" index="37vLTG" />
<concept id="1068498886294" name="jetbrains.mps.baseLanguage.structure.AssignmentExpression" flags="nn" index="37vLTI" />
<concept id="4972933694980447171" name="jetbrains.mps.baseLanguage.structure.BaseVariableDeclaration" flags="ng" index="19Szcq">
<child id="5680397130376446158" name="type" index="1tU5fm" />
</concept>
<concept id="1068580123132" name="jetbrains.mps.baseLanguage.structure.BaseMethodDeclaration" flags="ng" index="3clF44">
<property id="4276006055363816570" name="isSynchronized" index="od$2w" />
<property id="1181808852946" name="isFinal" index="DiZV1" />
<child id="1068580123133" name="returnType" index="3clF45" />
<child id="1068580123134" name="parameter" index="3clF46" />
<child id="1068580123135" name="body" index="3clF47" />
</concept>
<concept id="1068580123165" name="jetbrains.mps.baseLanguage.structure.InstanceMethodDeclaration" flags="ig" index="3clFb_">
<property id="1178608670077" name="isAbstract" index="1EzhhJ" />
</concept>
<concept id="1068580123152" name="jetbrains.mps.baseLanguage.structure.EqualsExpression" flags="nn" index="3clFbC" />
<concept id="1068580123155" name="jetbrains.mps.baseLanguage.structure.ExpressionStatement" flags="nn" index="3clFbF">
<child id="1068580123156" name="expression" index="3clFbG" />
</concept>
<concept id="1068580123157" name="jetbrains.mps.baseLanguage.structure.Statement" flags="nn" index="3clFbH" />
<concept id="1068580123159" name="jetbrains.mps.baseLanguage.structure.IfStatement" flags="nn" index="3clFbJ">
<child id="1068580123160" name="condition" index="3clFbw" />
<child id="1068580123161" name="ifTrue" index="3clFbx" />
</concept>
<concept id="1068580123136" name="jetbrains.mps.baseLanguage.structure.StatementList" flags="sn" stub="5293379017992965193" index="3clFbS">
<child id="1068581517665" name="statement" index="3cqZAp" />
</concept>
<concept id="1068580123140" name="jetbrains.mps.baseLanguage.structure.ConstructorDeclaration" flags="ig" index="3clFbW" />
<concept id="1068581242878" name="jetbrains.mps.baseLanguage.structure.ReturnStatement" flags="nn" index="3cpWs6">
<child id="1068581517676" name="expression" index="3cqZAk" />
</concept>
<concept id="1068581242864" name="jetbrains.mps.baseLanguage.structure.LocalVariableDeclarationStatement" flags="nn" index="3cpWs8">
<child id="1068581242865" name="localVariableDeclaration" index="3cpWs9" />
</concept>
<concept id="1068581242863" name="jetbrains.mps.baseLanguage.structure.LocalVariableDeclaration" flags="nr" index="3cpWsn" />
<concept id="1068581517677" name="jetbrains.mps.baseLanguage.structure.VoidType" flags="in" index="3cqZAl" />
<concept id="1081516740877" name="jetbrains.mps.baseLanguage.structure.NotExpression" flags="nn" index="3fqX7Q">
<child id="1081516765348" name="expression" index="3fr31v" />
</concept>
<concept id="1204053956946" name="jetbrains.mps.baseLanguage.structure.IMethodCall" flags="ngI" index="1ndlxa">
<reference id="1068499141037" name="baseMethodDeclaration" index="37wK5l" />
<child id="1068499141038" name="actualArgument" index="37wK5m" />
</concept>
<concept id="1212685548494" name="jetbrains.mps.baseLanguage.structure.ClassCreator" flags="nn" index="1pGfFk">
<child id="1212687122400" name="typeParameter" index="1pMfVU" />
</concept>
<concept id="1107461130800" name="jetbrains.mps.baseLanguage.structure.Classifier" flags="ng" index="3pOWGL">
<property id="521412098689998745" name="nonStatic" index="2bfB8j" />
<child id="5375687026011219971" name="member" index="jymVt" unordered="true" />
</concept>
<concept id="7812454656619025412" name="jetbrains.mps.baseLanguage.structure.LocalMethodCall" flags="nn" index="1rXfSq" />
<concept id="1107535904670" name="jetbrains.mps.baseLanguage.structure.ClassifierType" flags="in" index="3uibUv">
<reference id="1107535924139" name="classifier" index="3uigEE" />
<child id="1109201940907" name="parameter" index="11_B2D" />
</concept>
<concept id="1081773326031" name="jetbrains.mps.baseLanguage.structure.BinaryOperation" flags="nn" index="3uHJSO">
<child id="1081773367579" name="rightExpression" index="3uHU7w" />
<child id="1081773367580" name="leftExpression" index="3uHU7B" />
</concept>
<concept id="1073239437375" name="jetbrains.mps.baseLanguage.structure.NotEqualsExpression" flags="nn" index="3y3z36" />
<concept id="1178549954367" name="jetbrains.mps.baseLanguage.structure.IVisible" flags="ngI" index="1B3ioH">
<child id="1178549979242" name="visibility" index="1B3o_S" />
</concept>
<concept id="1163668896201" name="jetbrains.mps.baseLanguage.structure.TernaryOperatorExpression" flags="nn" index="3K4zz7">
<child id="1163668914799" name="condition" index="3K4Cdx" />
<child id="1163668922816" name="ifTrue" index="3K4E3e" />
<child id="1163668934364" name="ifFalse" index="3K4GZi" />
</concept>
<concept id="1146644602865" name="jetbrains.mps.baseLanguage.structure.PublicVisibility" flags="nn" index="3Tm1VV" />
<concept id="1146644623116" name="jetbrains.mps.baseLanguage.structure.PrivateVisibility" flags="nn" index="3Tm6S6" />
<concept id="1146644641414" name="jetbrains.mps.baseLanguage.structure.ProtectedVisibility" flags="nn" index="3Tmbuc" />
<concept id="1170345865475" name="jetbrains.mps.baseLanguage.structure.AnonymousClass" flags="ig" index="1Y3b0j">
<reference id="1170346070688" name="classifier" index="1Y3XeK" />
<child id="1201186121363" name="typeParameter" index="2Ghqu4" />
</concept>
</language>
<language id="ceab5195-25ea-4f22-9b92-103b95ca8c0c" name="jetbrains.mps.lang.core">
<concept id="1169194658468" name="jetbrains.mps.lang.core.structure.INamedConcept" flags="ngI" index="TrEIO">
<property id="1169194664001" name="name" index="TrG5h" />
</concept>
</language>
</registry>
<node concept="312cEu" id="2tjs8VC0K0m">
<property role="TrG5h" value="Memoizer" />
<node concept="2tJIrI" id="47QDz5v5J8W" role="jymVt" />
<node concept="Wx3nA" id="2tjs8VC16TI" role="jymVt">
<property role="TrG5h" value="CONTEXT_INSTANCE" />
<node concept="3Tm6S6" id="2tjs8VC16TK" role="1B3o_S" />
<node concept="3uibUv" id="2tjs8VC172F" role="1tU5fm">
<ref role="3uigEE" to="wyt6:~ThreadLocal" resolve="ThreadLocal" />
<node concept="3uibUv" id="2tjs8VC17gT" role="11_B2D">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
</node>
<node concept="2ShNRf" id="47QDz5v5JP3" role="33vP2m">
<node concept="YeOm9" id="47QDz5v5JP4" role="2ShVmc">
<node concept="1Y3b0j" id="47QDz5v5JP5" role="YeSDq">
<property role="2bfB8j" value="true" />
<ref role="1Y3XeK" to="wyt6:~ThreadLocal" resolve="ThreadLocal" />
<ref role="37wK5l" to="wyt6:~ThreadLocal.&lt;init&gt;()" resolve="ThreadLocal" />
<node concept="3Tm1VV" id="47QDz5v5JP6" role="1B3o_S" />
<node concept="3uibUv" id="47QDz5v5JP7" role="2Ghqu4">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
<node concept="3clFb_" id="47QDz5v5JP8" role="jymVt">
<property role="1EzhhJ" value="false" />
<property role="TrG5h" value="initialValue" />
<property role="DiZV1" value="false" />
<property role="od$2w" value="false" />
<node concept="3Tmbuc" id="47QDz5v5JP9" role="1B3o_S" />
<node concept="3uibUv" id="47QDz5v5JPa" role="3clF45">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
<node concept="3clFbS" id="47QDz5v5JPb" role="3clF47">
<node concept="3clFbF" id="6Dg__VIRWzR" role="3cqZAp">
<node concept="2ShNRf" id="6Dg__VIRWzP" role="3clFbG">
<node concept="1pGfFk" id="6Dg__VIRYwR" role="2ShVmc">
<ref role="37wK5l" node="2tjs8VC15lz" resolve="Memoizer" />
<node concept="10Nm6u" id="6Dg__VIRYzI" role="37wK5m" />
</node>
</node>
</node>
</node>
<node concept="2AHcQZ" id="47QDz5v5JPe" role="2AJF6D">
<ref role="2AI5Lk" to="wyt6:~Override" resolve="Override" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC0K2N" role="jymVt" />
<node concept="2YIFZL" id="2tjs8VC0VB5" role="jymVt">
<property role="TrG5h" value="fromContext" />
<node concept="3uibUv" id="2tjs8VC12Co" role="3clF45">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
<node concept="3Tm1VV" id="2tjs8VC0VB8" role="1B3o_S" />
<node concept="3clFbS" id="2tjs8VC0VB9" role="3clF47">
<node concept="3clFbJ" id="2k2r9bMc1fJ" role="3cqZAp">
<node concept="3clFbS" id="2k2r9bMc1fL" role="3clFbx">
<node concept="YS8fn" id="2k2r9bMc2qm" role="3cqZAp">
<node concept="2ShNRf" id="2k2r9bMc2Gn" role="YScLw">
<node concept="1pGfFk" id="2k2r9bMc8hl" role="2ShVmc">
<ref role="37wK5l" to="wyt6:~IllegalStateException.&lt;init&gt;(java.lang.String)" resolve="IllegalStateException" />
<node concept="Xl_RD" id="2k2r9bMc8Pw" role="37wK5m">
<property role="Xl_RC" value="not initialized" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbC" id="2k2r9bMc1P1" role="3clFbw">
<node concept="10Nm6u" id="2k2r9bMc26V" role="3uHU7w" />
<node concept="37vLTw" id="2k2r9bMc1yi" role="3uHU7B">
<ref role="3cqZAo" node="2tjs8VC16TI" resolve="CONTEXT_INSTANCE" />
</node>
</node>
</node>
<node concept="3clFbF" id="2tjs8VC1aA_" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC1aJQ" role="3clFbG">
<node concept="37vLTw" id="2tjs8VC1aA$" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC16TI" resolve="CONTEXT_INSTANCE" />
</node>
<node concept="liA8E" id="2tjs8VC1bcJ" role="2OqNvi">
<ref role="37wK5l" to="wyt6:~ThreadLocal.get()" resolve="get" />
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="47QDz5v5P_y" role="jymVt" />
<node concept="2YIFZL" id="2tjs8VC1byF" role="jymVt">
<property role="TrG5h" value="push" />
<node concept="3cqZAl" id="2tjs8VC1byH" role="3clF45" />
<node concept="3Tm1VV" id="2tjs8VC1byI" role="1B3o_S" />
<node concept="3clFbS" id="2tjs8VC1byJ" role="3clF47">
<node concept="3cpWs8" id="2tjs8VC1cVW" role="3cqZAp">
<node concept="3cpWsn" id="2tjs8VC1cVX" role="3cpWs9">
<property role="TrG5h" value="curr" />
<node concept="3uibUv" id="2tjs8VC1cVN" role="1tU5fm">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
<node concept="2OqwBi" id="2tjs8VC1cVY" role="33vP2m">
<node concept="37vLTw" id="2tjs8VC1cVZ" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC16TI" resolve="CONTEXT_INSTANCE" />
</node>
<node concept="liA8E" id="2tjs8VC1cW0" role="2OqNvi">
<ref role="37wK5l" to="wyt6:~ThreadLocal.get()" resolve="get" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="2tjs8VC1dCc" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC1dMh" role="3clFbG">
<node concept="37vLTw" id="2tjs8VC1dCa" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC16TI" resolve="CONTEXT_INSTANCE" />
</node>
<node concept="liA8E" id="2tjs8VC1dWX" role="2OqNvi">
<ref role="37wK5l" to="wyt6:~ThreadLocal.set(java.lang.Object)" resolve="set" />
<node concept="2ShNRf" id="2tjs8VC1e6B" role="37wK5m">
<node concept="1pGfFk" id="2tjs8VC1exZ" role="2ShVmc">
<ref role="37wK5l" node="2tjs8VC15lz" resolve="Memoizer" />
<node concept="37vLTw" id="2tjs8VC1eFO" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC1cVX" resolve="curr" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC1eP8" role="jymVt" />
<node concept="2YIFZL" id="2tjs8VC1f3O" role="jymVt">
<property role="TrG5h" value="pop" />
<node concept="3cqZAl" id="2tjs8VC1f3Q" role="3clF45" />
<node concept="3Tm1VV" id="2tjs8VC1f3R" role="1B3o_S" />
<node concept="3clFbS" id="2tjs8VC1f3S" role="3clF47">
<node concept="3cpWs8" id="2tjs8VC1g0D" role="3cqZAp">
<node concept="3cpWsn" id="2tjs8VC1g0E" role="3cpWs9">
<property role="TrG5h" value="curr" />
<node concept="3uibUv" id="2tjs8VC1g0h" role="1tU5fm">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
<node concept="2OqwBi" id="2tjs8VC1g0F" role="33vP2m">
<node concept="37vLTw" id="2tjs8VC1g0G" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC16TI" resolve="CONTEXT_INSTANCE" />
</node>
<node concept="liA8E" id="2tjs8VC1g0H" role="2OqNvi">
<ref role="37wK5l" to="wyt6:~ThreadLocal.get()" resolve="get" />
</node>
</node>
</node>
</node>
<node concept="3clFbJ" id="2tjs8VC1gvV" role="3cqZAp">
<node concept="3clFbS" id="2tjs8VC1gvX" role="3clFbx">
<node concept="YS8fn" id="2tjs8VC1hvu" role="3cqZAp">
<node concept="2ShNRf" id="2tjs8VC1hZa" role="YScLw">
<node concept="1pGfFk" id="2tjs8VC1iqO" role="2ShVmc">
<ref role="37wK5l" to="wyt6:~NullPointerException.&lt;init&gt;()" resolve="NullPointerException" />
</node>
</node>
</node>
</node>
<node concept="3clFbC" id="2tjs8VC1h9e" role="3clFbw">
<node concept="10Nm6u" id="2tjs8VC1hjF" role="3uHU7w" />
<node concept="37vLTw" id="2tjs8VC1gEu" role="3uHU7B">
<ref role="3cqZAo" node="2tjs8VC1g0E" resolve="curr" />
</node>
</node>
</node>
<node concept="3clFbF" id="2tjs8VC1jBY" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC1jNz" role="3clFbG">
<node concept="37vLTw" id="2tjs8VC1jBW" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC16TI" resolve="CONTEXT_INSTANCE" />
</node>
<node concept="liA8E" id="2tjs8VC1jZK" role="2OqNvi">
<ref role="37wK5l" to="wyt6:~ThreadLocal.set(java.lang.Object)" resolve="set" />
<node concept="2OqwBi" id="2tjs8VC1km2" role="37wK5m">
<node concept="37vLTw" id="2tjs8VC1kbj" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC1g0E" resolve="curr" />
</node>
<node concept="2OwXpG" id="2tjs8VC1kxK" role="2OqNvi">
<ref role="2Oxat5" node="2tjs8VC13tT" resolve="prev" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="2tjs8VC1mO1" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC1mZE" role="3clFbG">
<node concept="37vLTw" id="2tjs8VC1mNZ" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC1g0E" resolve="curr" />
</node>
<node concept="liA8E" id="2tjs8VC1ncA" role="2OqNvi">
<ref role="37wK5l" node="2tjs8VC1kVc" resolve="clear" />
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC1bne" role="jymVt" />
<node concept="2YIFZL" id="2tjs8VC2_Fr" role="jymVt">
<property role="TrG5h" value="set" />
<node concept="37vLTG" id="2tjs8VC2De3" role="3clF46">
<property role="TrG5h" value="token" />
<node concept="3uibUv" id="2tjs8VC2DuA" role="1tU5fm">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
</node>
<node concept="37vLTG" id="2tjs8VC2EaW" role="3clF46">
<property role="TrG5h" value="value" />
<node concept="16syzq" id="2tjs8VC2Esr" role="1tU5fm">
<ref role="16sUi3" node="2tjs8VC2AEZ" resolve="T" />
</node>
</node>
<node concept="3cqZAl" id="2tjs8VC2CJE" role="3clF45" />
<node concept="3Tm1VV" id="2tjs8VC2_Fu" role="1B3o_S" />
<node concept="3clFbS" id="2tjs8VC2_Fv" role="3clF47">
<node concept="3clFbF" id="2tjs8VC2FaW" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC2FpB" role="3clFbG">
<node concept="1rXfSq" id="2tjs8VC2FaV" role="2Oq$k0">
<ref role="37wK5l" node="2tjs8VC0VB5" resolve="fromContext" />
</node>
<node concept="liA8E" id="2tjs8VC2FEp" role="2OqNvi">
<ref role="37wK5l" node="2tjs8VC0VJ9" resolve="setValue" />
<node concept="37vLTw" id="2tjs8VC2FT$" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC2De3" resolve="token" />
</node>
<node concept="37vLTw" id="2tjs8VC2Gnp" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC2EaW" resolve="value" />
</node>
</node>
</node>
</node>
</node>
<node concept="16euLQ" id="2tjs8VC2AEZ" role="16eVyc">
<property role="TrG5h" value="T" />
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC2Csg" role="jymVt" />
<node concept="2YIFZL" id="2tjs8VC2Csb" role="jymVt">
<property role="TrG5h" value="get" />
<node concept="16syzq" id="2tjs8VC2Csc" role="3clF45">
<ref role="16sUi3" node="2tjs8VC2Csf" resolve="T" />
</node>
<node concept="3Tm1VV" id="2tjs8VC2Csd" role="1B3o_S" />
<node concept="3clFbS" id="2tjs8VC2Cse" role="3clF47">
<node concept="3clFbF" id="2tjs8VC2GC4" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC2GRi" role="3clFbG">
<node concept="1rXfSq" id="2tjs8VC2GC3" role="2Oq$k0">
<ref role="37wK5l" node="2tjs8VC0VB5" resolve="fromContext" />
</node>
<node concept="liA8E" id="2tjs8VC2H8_" role="2OqNvi">
<ref role="37wK5l" node="2tjs8VC1Yjc" resolve="getValue" />
<node concept="37vLTw" id="2tjs8VC2ImB" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC2HnC" resolve="token" />
</node>
</node>
</node>
</node>
</node>
<node concept="16euLQ" id="2tjs8VC2Csf" role="16eVyc">
<property role="TrG5h" value="T" />
</node>
<node concept="37vLTG" id="2tjs8VC2HnC" role="3clF46">
<property role="TrG5h" value="token" />
<node concept="3uibUv" id="2tjs8VC2HnB" role="1tU5fm">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC2BCo" role="jymVt" />
<node concept="2YIFZL" id="2tjs8VC2Blb" role="jymVt">
<property role="TrG5h" value="getOrPut" />
<node concept="16syzq" id="2tjs8VC2Blc" role="3clF45">
<ref role="16sUi3" node="2tjs8VC2Blf" resolve="T" />
</node>
<node concept="3Tm1VV" id="2tjs8VC2Bld" role="1B3o_S" />
<node concept="3clFbS" id="2tjs8VC2Ble" role="3clF47">
<node concept="3clFbF" id="2tjs8VC2Lat" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC2Lq8" role="3clFbG">
<node concept="1rXfSq" id="2tjs8VC2Las" role="2Oq$k0">
<ref role="37wK5l" node="2tjs8VC0VB5" resolve="fromContext" />
</node>
<node concept="liA8E" id="2tjs8VC2LFO" role="2OqNvi">
<ref role="37wK5l" node="2tjs8VC1NkJ" resolve="getOrSetValue" />
<node concept="37vLTw" id="2tjs8VC2LVT" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC2I_G" resolve="token" />
</node>
<node concept="37vLTw" id="2tjs8VC2Msa" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC2J5M" resolve="defaultValue" />
</node>
</node>
</node>
</node>
</node>
<node concept="16euLQ" id="2tjs8VC2Blf" role="16eVyc">
<property role="TrG5h" value="T" />
</node>
<node concept="37vLTG" id="2tjs8VC2I_G" role="3clF46">
<property role="TrG5h" value="token" />
<node concept="3uibUv" id="2tjs8VC2I_F" role="1tU5fm">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
</node>
<node concept="37vLTG" id="2tjs8VC2J5M" role="3clF46">
<property role="TrG5h" value="defaultValue" />
<node concept="3uibUv" id="2tjs8VC2Jol" role="1tU5fm">
<ref role="3uigEE" to="18ew:~Computable" resolve="Computable" />
<node concept="16syzq" id="2tjs8VC2JVe" role="11_B2D">
<ref role="16sUi3" node="2tjs8VC2Blf" resolve="T" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC2$R3" role="jymVt" />
<node concept="3clFbW" id="2tjs8VC15lz" role="jymVt">
<node concept="37vLTG" id="2tjs8VC15tB" role="3clF46">
<property role="TrG5h" value="prev" />
<node concept="3uibUv" id="2tjs8VC15AC" role="1tU5fm">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
</node>
<node concept="3cqZAl" id="2tjs8VC15l_" role="3clF45" />
<node concept="3Tm6S6" id="2tjs8VC2_a2" role="1B3o_S" />
<node concept="3clFbS" id="2tjs8VC15lB" role="3clF47">
<node concept="3clFbF" id="2tjs8VC163F" role="3cqZAp">
<node concept="37vLTI" id="2tjs8VC16qj" role="3clFbG">
<node concept="37vLTw" id="2tjs8VC16xR" role="37vLTx">
<ref role="3cqZAo" node="2tjs8VC15tB" resolve="prev" />
</node>
<node concept="2OqwBi" id="2tjs8VC16au" role="37vLTJ">
<node concept="Xjq3P" id="2tjs8VC163E" role="2Oq$k0" />
<node concept="2OwXpG" id="2tjs8VC16if" role="2OqNvi">
<ref role="2Oxat5" node="2tjs8VC13tT" resolve="prev" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC15dh" role="jymVt" />
<node concept="3clFb_" id="2tjs8VC0VJ9" role="jymVt">
<property role="TrG5h" value="setValue" />
<node concept="3Tm6S6" id="1Ry9kf2s1zO" role="1B3o_S" />
<node concept="37vLTG" id="2tjs8VC0VXg" role="3clF46">
<property role="TrG5h" value="token" />
<node concept="3uibUv" id="2tjs8VC0W1X" role="1tU5fm">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
</node>
<node concept="37vLTG" id="2tjs8VC0W8R" role="3clF46">
<property role="TrG5h" value="value" />
<node concept="16syzq" id="2tjs8VC0We0" role="1tU5fm">
<ref role="16sUi3" node="2tjs8VC0WdA" resolve="T" />
</node>
</node>
<node concept="3cqZAl" id="2tjs8VC0VJb" role="3clF45" />
<node concept="3clFbS" id="2tjs8VC0VJd" role="3clF47">
<node concept="3clFbF" id="2tjs8VC0Y5E" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC0YbR" role="3clFbG">
<node concept="37vLTw" id="2tjs8VC0Y5D" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC0WHe" resolve="token2value" />
</node>
<node concept="liA8E" id="2tjs8VC0Ymq" role="2OqNvi">
<ref role="37wK5l" to="33ny:~Map.put(java.lang.Object,java.lang.Object)" resolve="put" />
<node concept="37vLTw" id="2tjs8VC0Yrk" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC0VXg" resolve="token" />
</node>
<node concept="37vLTw" id="2tjs8VC0Y$c" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC0W8R" resolve="value" />
</node>
</node>
</node>
</node>
</node>
<node concept="16euLQ" id="2tjs8VC0WdA" role="16eVyc">
<property role="TrG5h" value="T" />
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC0K2S" role="jymVt" />
<node concept="3clFb_" id="2tjs8VC1Yjc" role="jymVt">
<property role="TrG5h" value="getValue" />
<node concept="3Tm6S6" id="1Ry9kf2s1SP" role="1B3o_S" />
<node concept="37vLTG" id="2tjs8VC1Yjd" role="3clF46">
<property role="TrG5h" value="token" />
<node concept="3uibUv" id="2tjs8VC1Yje" role="1tU5fm">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
</node>
<node concept="16syzq" id="2tjs8VC1Yjf" role="3clF45">
<ref role="16sUi3" node="2tjs8VC1YjL" resolve="T" />
</node>
<node concept="3clFbS" id="2tjs8VC1Yjh" role="3clF47">
<node concept="3cpWs8" id="2tjs8VC26Cx" role="3cqZAp">
<node concept="3cpWsn" id="2tjs8VC26Cy" role="3cpWs9">
<property role="TrG5h" value="owner" />
<node concept="3uibUv" id="2tjs8VC26Cu" role="1tU5fm">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
<node concept="1rXfSq" id="2tjs8VC26Cz" role="33vP2m">
<ref role="37wK5l" node="2tjs8VC22Ho" resolve="lookupOwner" />
<node concept="37vLTw" id="2tjs8VC26C$" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC1Yjd" resolve="token" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="2tjs8VC26bV" role="3cqZAp">
<node concept="3K4zz7" id="2tjs8VC27HS" role="3clFbG">
<node concept="10QFUN" id="2tjs8VC29LP" role="3K4E3e">
<node concept="2OqwBi" id="2tjs8VC29LJ" role="10QFUP">
<node concept="2OqwBi" id="2tjs8VC29LK" role="2Oq$k0">
<node concept="37vLTw" id="2tjs8VC29LL" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC26Cy" resolve="owner" />
</node>
<node concept="2OwXpG" id="2tjs8VC29LM" role="2OqNvi">
<ref role="2Oxat5" node="2tjs8VC0WHe" resolve="token2value" />
</node>
</node>
<node concept="liA8E" id="2tjs8VC29LN" role="2OqNvi">
<ref role="37wK5l" to="33ny:~Map.get(java.lang.Object)" resolve="get" />
<node concept="37vLTw" id="2tjs8VC29LO" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC1Yjd" resolve="token" />
</node>
</node>
</node>
<node concept="16syzq" id="2tjs8VC2a1r" role="10QFUM">
<ref role="16sUi3" node="2tjs8VC1YjL" resolve="T" />
</node>
</node>
<node concept="10Nm6u" id="2tjs8VC29yP" role="3K4GZi" />
<node concept="3y3z36" id="2tjs8VC27ik" role="3K4Cdx">
<node concept="10Nm6u" id="2tjs8VC27w3" role="3uHU7w" />
<node concept="37vLTw" id="2tjs8VC26C_" role="3uHU7B">
<ref role="3cqZAo" node="2tjs8VC26Cy" resolve="owner" />
</node>
</node>
</node>
</node>
</node>
<node concept="16euLQ" id="2tjs8VC1YjL" role="16eVyc">
<property role="TrG5h" value="T" />
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC1Yjb" role="jymVt" />
<node concept="3clFb_" id="2tjs8VC1NkJ" role="jymVt">
<property role="TrG5h" value="getOrSetValue" />
<node concept="3Tm6S6" id="1Ry9kf2s2dQ" role="1B3o_S" />
<node concept="37vLTG" id="2tjs8VC1OGQ" role="3clF46">
<property role="TrG5h" value="token" />
<node concept="3uibUv" id="2tjs8VC1OWd" role="1tU5fm">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
</node>
<node concept="37vLTG" id="2tjs8VC1Pmh" role="3clF46">
<property role="TrG5h" value="defaultValue" />
<node concept="3uibUv" id="2tjs8VC1QDR" role="1tU5fm">
<ref role="3uigEE" to="18ew:~Computable" resolve="Computable" />
<node concept="16syzq" id="2tjs8VC1WlB" role="11_B2D">
<ref role="16sUi3" node="2tjs8VC1Qh2" resolve="T" />
</node>
</node>
</node>
<node concept="16syzq" id="2tjs8VC2eWo" role="3clF45">
<ref role="16sUi3" node="2tjs8VC1Qh2" resolve="T" />
</node>
<node concept="3clFbS" id="2tjs8VC1NkN" role="3clF47">
<node concept="3cpWs8" id="2tjs8VC2b9c" role="3cqZAp">
<node concept="3cpWsn" id="2tjs8VC2b9d" role="3cpWs9">
<property role="TrG5h" value="owner" />
<node concept="3uibUv" id="2tjs8VC2b9a" role="1tU5fm">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
<node concept="1rXfSq" id="2tjs8VC2b9e" role="33vP2m">
<ref role="37wK5l" node="2tjs8VC22Ho" resolve="lookupOwner" />
<node concept="37vLTw" id="2tjs8VC2b9f" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC1OGQ" resolve="token" />
</node>
</node>
</node>
</node>
<node concept="3clFbJ" id="2tjs8VC2bVQ" role="3cqZAp">
<node concept="3clFbS" id="2tjs8VC2bVS" role="3clFbx">
<node concept="3cpWs6" id="2tjs8VC2cKC" role="3cqZAp">
<node concept="10QFUN" id="2tjs8VC2day" role="3cqZAk">
<node concept="16syzq" id="2tjs8VC2dp6" role="10QFUM">
<ref role="16sUi3" node="2tjs8VC1Qh2" resolve="T" />
</node>
<node concept="2OqwBi" id="2tjs8VC2dOP" role="10QFUP">
<node concept="37vLTw" id="2tjs8VC2dBv" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC2b9d" resolve="owner" />
</node>
<node concept="liA8E" id="2tjs8VC2evJ" role="2OqNvi">
<ref role="37wK5l" node="2tjs8VC1Yjc" resolve="getValue" />
<node concept="37vLTw" id="2tjs8VC2eIi" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC1OGQ" resolve="token" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="2tjs8VC2cmA" role="3clFbw">
<node concept="10Nm6u" id="2tjs8VC2czs" role="3uHU7w" />
<node concept="37vLTw" id="2tjs8VC2c8O" role="3uHU7B">
<ref role="3cqZAo" node="2tjs8VC2b9d" resolve="owner" />
</node>
</node>
</node>
<node concept="3clFbH" id="2tjs8VC22g$" role="3cqZAp" />
<node concept="3cpWs8" id="2tjs8VC2iz1" role="3cqZAp">
<node concept="3cpWsn" id="2tjs8VC2iz2" role="3cpWs9">
<property role="TrG5h" value="value" />
<node concept="16syzq" id="2tjs8VC2iyR" role="1tU5fm">
<ref role="16sUi3" node="2tjs8VC1Qh2" resolve="T" />
</node>
<node concept="2OqwBi" id="2tjs8VC2iz3" role="33vP2m">
<node concept="37vLTw" id="2tjs8VC2iz4" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC1Pmh" resolve="defaultValue" />
</node>
<node concept="liA8E" id="2tjs8VC2iz5" role="2OqNvi">
<ref role="37wK5l" to="18ew:~Computable.compute()" resolve="compute" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="2tjs8VC2gjI" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC2g_h" role="3clFbG">
<node concept="37vLTw" id="2tjs8VC2gjG" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC0WHe" resolve="token2value" />
</node>
<node concept="liA8E" id="2tjs8VC2h3S" role="2OqNvi">
<ref role="37wK5l" to="33ny:~Map.put(java.lang.Object,java.lang.Object)" resolve="put" />
<node concept="37vLTw" id="2tjs8VC2hxn" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC1OGQ" resolve="token" />
</node>
<node concept="37vLTw" id="2tjs8VC2iz6" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC2iz2" resolve="value" />
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="2tjs8VC2jfU" role="3cqZAp">
<node concept="37vLTw" id="2tjs8VC2jfS" role="3clFbG">
<ref role="3cqZAo" node="2tjs8VC2iz2" resolve="value" />
</node>
</node>
</node>
<node concept="16euLQ" id="2tjs8VC1Qh2" role="16eVyc">
<property role="TrG5h" value="T" />
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC22rr" role="jymVt" />
<node concept="3clFb_" id="2tjs8VC22Ho" role="jymVt">
<property role="TrG5h" value="lookupOwner" />
<node concept="37vLTG" id="2tjs8VC23ZY" role="3clF46">
<property role="TrG5h" value="token" />
<node concept="3uibUv" id="2tjs8VC24eE" role="1tU5fm">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
</node>
<node concept="3uibUv" id="2tjs8VC23b8" role="3clF45">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
<node concept="3Tm6S6" id="2tjs8VC22YH" role="1B3o_S" />
<node concept="3clFbS" id="2tjs8VC22Hs" role="3clF47">
<node concept="3clFbJ" id="2tjs8VC24Me" role="3cqZAp">
<node concept="3clFbS" id="2tjs8VC24Mf" role="3clFbx">
<node concept="3clFbJ" id="2tjs8VC24Mg" role="3cqZAp">
<node concept="3clFbS" id="2tjs8VC24Mh" role="3clFbx">
<node concept="3cpWs6" id="2tjs8VC24Mi" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC24Mj" role="3cqZAk">
<node concept="37vLTw" id="2tjs8VC24Mk" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC13tT" resolve="prev" />
</node>
<node concept="liA8E" id="2tjs8VC24Ml" role="2OqNvi">
<ref role="37wK5l" node="2tjs8VC22Ho" resolve="lookupOwner" />
<node concept="37vLTw" id="2tjs8VC24Mm" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC23ZY" resolve="token" />
</node>
</node>
</node>
</node>
</node>
<node concept="3y3z36" id="2tjs8VC24Mn" role="3clFbw">
<node concept="10Nm6u" id="2tjs8VC24Mo" role="3uHU7w" />
<node concept="37vLTw" id="2tjs8VC24Mp" role="3uHU7B">
<ref role="3cqZAo" node="2tjs8VC13tT" resolve="prev" />
</node>
</node>
</node>
<node concept="3clFbH" id="2tjs8VC24Mq" role="3cqZAp" />
<node concept="3cpWs6" id="2tjs8VC24Mr" role="3cqZAp">
<node concept="10Nm6u" id="2tjs8VC24Ms" role="3cqZAk" />
</node>
</node>
<node concept="3fqX7Q" id="2tjs8VC24Mt" role="3clFbw">
<node concept="2OqwBi" id="2tjs8VC24Mu" role="3fr31v">
<node concept="37vLTw" id="2tjs8VC24Mv" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC0WHe" resolve="token2value" />
</node>
<node concept="liA8E" id="2tjs8VC24Mw" role="2OqNvi">
<ref role="37wK5l" to="33ny:~Map.containsKey(java.lang.Object)" resolve="containsKey" />
<node concept="37vLTw" id="2tjs8VC24Mx" role="37wK5m">
<ref role="3cqZAo" node="2tjs8VC23ZY" resolve="token" />
</node>
</node>
</node>
</node>
</node>
<node concept="3clFbF" id="2tjs8VC25Is" role="3cqZAp">
<node concept="Xjq3P" id="2tjs8VC25Iq" role="3clFbG" />
</node>
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC1N51" role="jymVt" />
<node concept="3clFb_" id="2tjs8VC1kVc" role="jymVt">
<property role="TrG5h" value="clear" />
<node concept="3cqZAl" id="2tjs8VC1kVe" role="3clF45" />
<node concept="3Tm6S6" id="2tjs8VC1lc0" role="1B3o_S" />
<node concept="3clFbS" id="2tjs8VC1kVg" role="3clF47">
<node concept="3clFbF" id="2tjs8VC1lEc" role="3cqZAp">
<node concept="2OqwBi" id="2tjs8VC1lS_" role="3clFbG">
<node concept="37vLTw" id="2tjs8VC1lEb" role="2Oq$k0">
<ref role="3cqZAo" node="2tjs8VC0WHe" resolve="token2value" />
</node>
<node concept="liA8E" id="2tjs8VC1mbI" role="2OqNvi">
<ref role="37wK5l" to="33ny:~Map.clear()" resolve="clear" />
</node>
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC1mof" role="jymVt" />
<node concept="2tJIrI" id="2tjs8VC19BF" role="jymVt" />
<node concept="312cEg" id="2tjs8VC0WHe" role="jymVt">
<property role="TrG5h" value="token2value" />
<node concept="3Tm6S6" id="2tjs8VC0WHf" role="1B3o_S" />
<node concept="3uibUv" id="2tjs8VC0WI8" role="1tU5fm">
<ref role="3uigEE" to="33ny:~Map" resolve="Map" />
<node concept="3uibUv" id="2tjs8VC0WIJ" role="11_B2D">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
<node concept="3uibUv" id="2tjs8VC0WJb" role="11_B2D">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
</node>
<node concept="2ShNRf" id="2tjs8VC0WLW" role="33vP2m">
<node concept="1pGfFk" id="2tjs8VC0XV5" role="2ShVmc">
<ref role="37wK5l" to="33ny:~HashMap.&lt;init&gt;()" resolve="HashMap" />
<node concept="3uibUv" id="2tjs8VC0XZd" role="1pMfVU">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
<node concept="3uibUv" id="2tjs8VC0Y1s" role="1pMfVU">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
</node>
</node>
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC0WGi" role="jymVt" />
<node concept="312cEg" id="2tjs8VC13tT" role="jymVt">
<property role="TrG5h" value="prev" />
<node concept="3Tm6S6" id="2tjs8VC13tU" role="1B3o_S" />
<node concept="3uibUv" id="2tjs8VC13_k" role="1tU5fm">
<ref role="3uigEE" node="2tjs8VC0K0m" resolve="Memoizer" />
</node>
</node>
<node concept="2tJIrI" id="2tjs8VC13mA" role="jymVt" />
<node concept="3Tm1VV" id="2tjs8VC0K0n" role="1B3o_S" />
</node>
</model>