Fix coderules generator, avoid referrences to transient models in types.

Coerce to be invoked on types inferred from the original input
nodes to avoid references to transient models in the result.
This commit is contained in:
Fedor Isakov 2020-11-06 09:54:28 +01:00
parent bb5bddcc36
commit fcd3e15b83
1 changed files with 102 additions and 246 deletions

View File

@ -432,10 +432,6 @@
<child id="1805153994415893199" name="type" index="1N15GL" />
</concept>
<concept id="1168024337012" name="jetbrains.mps.lang.generator.structure.SourceSubstituteMacro_SourceNodeQuery" flags="in" index="3NFfHV" />
<concept id="4035562641222622437" name="jetbrains.mps.lang.generator.structure.TemplateArgumentQuery" flags="in" index="1UU6SM" />
<concept id="4035562641222585520" name="jetbrains.mps.lang.generator.structure.TemplateArgumentQueryExpression" flags="nn" index="1UUvTB">
<child id="4035562641222618754" name="query" index="1UU7Ll" />
</concept>
<concept id="1118773211870" name="jetbrains.mps.lang.generator.structure.IfMacro" flags="ln" index="1W57fq">
<child id="1194989344771" name="alternativeConsequence" index="UU_$l" />
<child id="1167945861827" name="conditionFunction" index="3IZSJc" />
@ -472,9 +468,6 @@
<concept id="1229477454423" name="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_GetOriginalCopiedInputByOutput" flags="nn" index="12$id9">
<child id="1229477520175" name="outputNode" index="12$y8L" />
</concept>
<concept id="5190093307972723402" name="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_ParameterRef" flags="nn" index="3cR$yn">
<reference id="5190093307972736266" name="parameter" index="3cRzXn" />
</concept>
<concept id="1216860049627" name="jetbrains.mps.lang.generator.generationContext.structure.GenerationContextOp_GetOutputByLabelAndInput" flags="nn" index="1iwH70">
<reference id="1216860049628" name="label" index="1iwH77" />
<child id="1216860049632" name="inputNode" index="1iwH7V" />
@ -6416,21 +6409,13 @@
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="1sPUBX" id="7nPD14NP4Q6" role="lGtFl">
<ref role="v9R2y" node="1sCZQVfjxsX" resolve="variable_class" />
<node concept="1UUvTB" id="7nPD14NP4Q7" role="v9R3O">
<node concept="1UU6SM" id="7nPD14NP4Q8" role="1UU7Ll">
<node concept="3clFbS" id="7nPD14NP4Q9" role="2VODD2">
<node concept="3clFbF" id="7nPD14NP4Qa" role="3cqZAp">
<node concept="30H73N" id="7nPD14NP4Qb" role="3clFbG" />
</node>
</node>
</node>
</node>
<node concept="3NFfHV" id="7Cu8ExJfHdr" role="1sPUBK">
<node concept="3clFbS" id="7Cu8ExJfHds" role="2VODD2">
<node concept="3clFbF" id="7Cu8ExJfHd_" role="3cqZAp">
<node concept="2c44tf" id="7Cu8ExJfHdA" role="3clFbG">
<node concept="3VsKOn" id="7Cu8ExJfHdB" role="2c44tc">
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="3clFbF" id="6zber0NI283" role="3cqZAp">
<node concept="2OqwBi" id="6zber0NI284" role="3clFbG">
<node concept="30H73N" id="6zber0NI285" role="2Oq$k0" />
<node concept="2qgKlT" id="6zber0NI286" role="2OqNvi">
<ref role="37wK5l" to="ha02:75vUFrSLzQL" resolve="getContainer" />
</node>
</node>
</node>
@ -6589,21 +6574,13 @@
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="1sPUBX" id="7nPD14NOM9i" role="lGtFl">
<ref role="v9R2y" node="1sCZQVfjxsX" resolve="variable_class" />
<node concept="1UUvTB" id="7nPD14NOM9j" role="v9R3O">
<node concept="1UU6SM" id="7nPD14NOM9k" role="1UU7Ll">
<node concept="3clFbS" id="7nPD14NOM9l" role="2VODD2">
<node concept="3clFbF" id="7nPD14NOM9m" role="3cqZAp">
<node concept="30H73N" id="7nPD14NOM9n" role="3clFbG" />
</node>
</node>
</node>
</node>
<node concept="3NFfHV" id="7Cu8ExJfHCL" role="1sPUBK">
<node concept="3clFbS" id="7Cu8ExJfHCM" role="2VODD2">
<node concept="3clFbF" id="7Cu8ExJfHCV" role="3cqZAp">
<node concept="2c44tf" id="7Cu8ExJfHCW" role="3clFbG">
<node concept="3VsKOn" id="7Cu8ExJfHCX" role="2c44tc">
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="3clFbF" id="6zber0NI2$X" role="3cqZAp">
<node concept="2OqwBi" id="6zber0NI2$Y" role="3clFbG">
<node concept="30H73N" id="6zber0NI2$Z" role="2Oq$k0" />
<node concept="2qgKlT" id="6zber0NI2_0" role="2OqNvi">
<ref role="37wK5l" to="ha02:75vUFrSLzQL" resolve="getContainer" />
</node>
</node>
</node>
@ -7061,21 +7038,13 @@
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="1sPUBX" id="7nPD14NP3g$" role="lGtFl">
<ref role="v9R2y" node="1sCZQVfjxsX" resolve="variable_class" />
<node concept="1UUvTB" id="7nPD14NP3g_" role="v9R3O">
<node concept="1UU6SM" id="7nPD14NP3gA" role="1UU7Ll">
<node concept="3clFbS" id="7nPD14NP3gB" role="2VODD2">
<node concept="3clFbF" id="7nPD14NP3gC" role="3cqZAp">
<node concept="30H73N" id="7nPD14NP3gD" role="3clFbG" />
</node>
</node>
</node>
</node>
<node concept="3NFfHV" id="7nPD14NP3gE" role="1sPUBK">
<node concept="3clFbS" id="7nPD14NP3gF" role="2VODD2">
<node concept="3clFbF" id="7Cu8ExJfYWE" role="3cqZAp">
<node concept="2c44tf" id="7Cu8ExJfYWF" role="3clFbG">
<node concept="3VsKOn" id="7Cu8ExJfYWG" role="2c44tc">
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="3NFfHV" id="6zber0NI0qz" role="1sPUBK">
<node concept="3clFbS" id="6zber0NI0q$" role="2VODD2">
<node concept="3clFbF" id="6zber0NI0qS" role="3cqZAp">
<node concept="2OqwBi" id="6zber0NI0H_" role="3clFbG">
<node concept="30H73N" id="6zber0NI0qR" role="2Oq$k0" />
<node concept="2qgKlT" id="6zber0NI0Zz" role="2OqNvi">
<ref role="37wK5l" to="ha02:75vUFrSLzQL" resolve="getContainer" />
</node>
</node>
</node>
@ -7226,21 +7195,13 @@
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="1sPUBX" id="7nPD14NOKAR" role="lGtFl">
<ref role="v9R2y" node="1sCZQVfjxsX" resolve="variable_class" />
<node concept="1UUvTB" id="7nPD14NOKAS" role="v9R3O">
<node concept="1UU6SM" id="7nPD14NOKAT" role="1UU7Ll">
<node concept="3clFbS" id="7nPD14NOKAU" role="2VODD2">
<node concept="3clFbF" id="7nPD14NOKAV" role="3cqZAp">
<node concept="30H73N" id="7nPD14NOKAW" role="3clFbG" />
</node>
</node>
</node>
</node>
<node concept="3NFfHV" id="7nPD14NOKAX" role="1sPUBK">
<node concept="3clFbS" id="7nPD14NOKAY" role="2VODD2">
<node concept="3clFbF" id="65DJywF7hmH" role="3cqZAp">
<node concept="2c44tf" id="65DJywF7hmF" role="3clFbG">
<node concept="3VsKOn" id="65DJywF7ht1" role="2c44tc">
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="3NFfHV" id="6zber0NI15J" role="1sPUBK">
<node concept="3clFbS" id="6zber0NI15K" role="2VODD2">
<node concept="3clFbF" id="6zber0NI15L" role="3cqZAp">
<node concept="2OqwBi" id="6zber0NI15M" role="3clFbG">
<node concept="30H73N" id="6zber0NI15N" role="2Oq$k0" />
<node concept="2qgKlT" id="6zber0NI15O" role="2OqNvi">
<ref role="37wK5l" to="ha02:75vUFrSLzQL" resolve="getContainer" />
</node>
</node>
</node>
@ -7692,90 +7653,90 @@
</node>
<node concept="jVnub" id="1sCZQVfjxsX">
<property role="TrG5h" value="variable_class" />
<node concept="1N15co" id="1sCZQVfjxsY" role="1s_3oS">
<property role="TrG5h" value="variable" />
<node concept="3Tqbb2" id="1sCZQVfjxsZ" role="1N15GL">
<ref role="ehGHo" to="5j4j:7E86$tKtfM3" resolve="LogicalVariableDeclaration" />
</node>
</node>
<node concept="3aamgX" id="1sCZQVfjxtS" role="3aUrZf">
<node concept="3aamgX" id="6zber0NHV8H" role="3aUrZf">
<property role="36QftV" value="true" />
<ref role="30HIoZ" to="tpee:gfVsKKk" resolve="ClassifierClassExpression" />
<node concept="14YyZ8" id="1sCZQVfjxtT" role="1lVwrX">
<node concept="14ZrTv" id="1sCZQVfjxtU" role="14ZwWg">
<node concept="30G5F_" id="1sCZQVfjxtV" role="150hEN">
<node concept="3clFbS" id="1sCZQVfjxtW" role="2VODD2">
<node concept="3clFbF" id="1sCZQVfjxu7" role="3cqZAp">
<node concept="2OqwBi" id="1sCZQVfjxu9" role="3clFbG">
<node concept="2OqwBi" id="6MYr6JxnBmo" role="2Oq$k0">
<node concept="2OqwBi" id="6MYr6JxnBmp" role="2Oq$k0">
<node concept="2OqwBi" id="6MYr6JxnBmq" role="2Oq$k0">
<node concept="1iwH7S" id="6MYr6JxnBmr" role="2Oq$k0" />
<node concept="3cR$yn" id="6MYr6JxnBms" role="2OqNvi">
<ref role="3cRzXn" node="1sCZQVfjxsY" resolve="variable" />
</node>
</node>
<node concept="2qgKlT" id="6MYr6JxnBmt" role="2OqNvi">
<ref role="37wK5l" to="ha02:75vUFrSLzQL" resolve="getContainer" />
</node>
</node>
<node concept="3TrEf2" id="6MYr6JxnBmu" role="2OqNvi">
<ref role="3Tt5mk" to="5j4j:5zfvpQ72gqq" resolve="dataType" />
</node>
</node>
<node concept="3w_OXm" id="1sCZQVfjxub" role="2OqNvi" />
<ref role="30HIoZ" to="5j4j:75vUFrS_9Sg" resolve="LogicalVariableDeclarationContainer" />
<node concept="30G5F_" id="6zber0NHVZ8" role="30HLyM">
<node concept="3clFbS" id="6zber0NHVZ9" role="2VODD2">
<node concept="3clFbF" id="6zber0NHW75" role="3cqZAp">
<node concept="2OqwBi" id="6zber0NHWHJ" role="3clFbG">
<node concept="2OqwBi" id="6zber0NHWko" role="2Oq$k0">
<node concept="30H73N" id="6zber0NHW74" role="2Oq$k0" />
<node concept="3TrEf2" id="6zber0NHWwv" role="2OqNvi">
<ref role="3Tt5mk" to="5j4j:5zfvpQ72gqq" resolve="dataType" />
</node>
</node>
</node>
</node>
<node concept="1Koe21" id="1sCZQVfjxug" role="150oIE">
<node concept="3VsKOn" id="1sCZQVfjxuh" role="1Koe22">
<ref role="3VsUkX" to="6exd:1bm7a6EXvsP" resolve="DataForm" />
<node concept="raruj" id="1sCZQVfjxui" role="lGtFl" />
<node concept="3w_OXm" id="6zber0NHWTU" role="2OqNvi" />
</node>
</node>
</node>
<node concept="gft3U" id="5f6wxQ31laS" role="14YRTM">
<node concept="3VsKOn" id="5f6wxQ31mai" role="gfFT$">
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="1ZhdrF" id="5f6wxQ31mar" role="lGtFl">
<property role="P3scX" value="f3061a53-9226-4cc5-a443-f952ceaf5816/1116615150612/1116615189566" />
<property role="2qtEX8" value="classifier" />
<node concept="3$xsQk" id="5f6wxQ31mas" role="3$ytzL">
<node concept="3clFbS" id="5f6wxQ31mat" role="2VODD2">
<node concept="3clFbF" id="5f6wxQ31mng" role="3cqZAp">
<node concept="2OqwBi" id="5f6wxQ31mnh" role="3clFbG">
<node concept="1UaxmW" id="5f6wxQ31mni" role="2Oq$k0">
<node concept="1YaCAy" id="5f6wxQ31mnj" role="1Ub_4A">
<property role="TrG5h" value="_" />
<ref role="1YaFvo" to="tpee:g7uibYu" resolve="ClassifierType" />
</node>
<node concept="2OqwBi" id="5f6wxQ31mnk" role="1Ub_4B">
<node concept="2OqwBi" id="5f6wxQ31mnl" role="2Oq$k0">
<node concept="2OqwBi" id="5f6wxQ31mnm" role="2Oq$k0">
<node concept="1iwH7S" id="5f6wxQ31mnn" role="2Oq$k0" />
<node concept="3cR$yn" id="5f6wxQ31mno" role="2OqNvi">
<ref role="3cRzXn" node="1sCZQVfjxsY" resolve="variable" />
</node>
</node>
<node concept="2qgKlT" id="5f6wxQ31mnp" role="2OqNvi">
<ref role="37wK5l" to="ha02:75vUFrSLzQL" resolve="getContainer" />
</node>
<node concept="1Koe21" id="6zber0NHX29" role="1lVwrX">
<node concept="3VsKOn" id="6zber0NHX2a" role="1Koe22">
<ref role="3VsUkX" to="6exd:1bm7a6EXvsP" resolve="DataForm" />
<node concept="raruj" id="6zber0NHX2b" role="lGtFl" />
</node>
</node>
</node>
<node concept="3aamgX" id="6zber0NHX2X" role="3aUrZf">
<property role="36QftV" value="true" />
<ref role="30HIoZ" to="5j4j:75vUFrS_9Sg" resolve="LogicalVariableDeclarationContainer" />
<node concept="30G5F_" id="6zber0NHX2Y" role="30HLyM">
<node concept="3clFbS" id="6zber0NHX2Z" role="2VODD2">
<node concept="3clFbF" id="6zber0NHX30" role="3cqZAp">
<node concept="2OqwBi" id="6zber0NHX31" role="3clFbG">
<node concept="2OqwBi" id="6zber0NHX32" role="2Oq$k0">
<node concept="30H73N" id="6zber0NHX33" role="2Oq$k0" />
<node concept="3TrEf2" id="6zber0NHX34" role="2OqNvi">
<ref role="3Tt5mk" to="5j4j:5zfvpQ72gqq" resolve="dataType" />
</node>
</node>
<node concept="3x8VRR" id="6zber0NHXsA" role="2OqNvi" />
</node>
</node>
</node>
</node>
<node concept="1Koe21" id="6zber0NHX36" role="1lVwrX">
<node concept="3VsKOn" id="6zber0NHXxs" role="1Koe22">
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="1ZhdrF" id="6zber0NHXxt" role="lGtFl">
<property role="P3scX" value="f3061a53-9226-4cc5-a443-f952ceaf5816/1116615150612/1116615189566" />
<property role="2qtEX8" value="classifier" />
<node concept="3$xsQk" id="6zber0NHXxu" role="3$ytzL">
<node concept="3clFbS" id="6zber0NHXxv" role="2VODD2">
<node concept="3clFbF" id="6zber0NHXxw" role="3cqZAp">
<node concept="2OqwBi" id="6zber0NHXxx" role="3clFbG">
<node concept="1UaxmW" id="6zber0NHXxy" role="2Oq$k0">
<node concept="1YaCAy" id="6zber0NHXxz" role="1Ub_4A">
<property role="TrG5h" value="_" />
<ref role="1YaFvo" to="tpee:g7uibYu" resolve="ClassifierType" />
</node>
<node concept="2OqwBi" id="6zber0NHXx$" role="1Ub_4B">
<node concept="1PxgMI" id="6zber0NHYUl" role="2Oq$k0">
<node concept="chp4Y" id="6zber0NHYYP" role="3oSUPX">
<ref role="cht4Q" to="5j4j:75vUFrS_9Sg" resolve="LogicalVariableDeclarationContainer" />
</node>
<node concept="2OqwBi" id="6zber0NHY8a" role="1m5AlR">
<node concept="1iwH7S" id="6zber0NHXXd" role="2Oq$k0" />
<node concept="12$id9" id="6zber0NHYkt" role="2OqNvi">
<node concept="30H73N" id="6zber0NHYns" role="12$y8L" />
</node>
</node>
<node concept="3TrEf2" id="5f6wxQ31mnq" role="2OqNvi">
<ref role="3Tt5mk" to="5j4j:5zfvpQ72gqq" resolve="dataType" />
</node>
</node>
<node concept="3TrEf2" id="6zber0NHZa3" role="2OqNvi">
<ref role="3Tt5mk" to="5j4j:5zfvpQ72gqq" resolve="dataType" />
</node>
</node>
<node concept="3TrEf2" id="5f6wxQ31mnr" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:g7uigIF" resolve="classifier" />
</node>
</node>
<node concept="3TrEf2" id="6zber0NHXxF" role="2OqNvi">
<ref role="3Tt5mk" to="tpee:g7uigIF" resolve="classifier" />
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="raruj" id="6zber0NHXLg" role="lGtFl" />
</node>
</node>
</node>
@ -7864,95 +7825,6 @@
<property role="1lLB17" value="expression type is null" />
</node>
</node>
<node concept="jVnub" id="49L2l3F7WoC">
<property role="TrG5h" value="variable_type" />
<node concept="3aamgX" id="49L2l3F7WoJ" role="3aUrZf">
<property role="36QftV" value="true" />
<ref role="30HIoZ" to="tpee:g7uibYu" resolve="ClassifierType" />
<node concept="14YyZ8" id="49L2l3F7WoK" role="1lVwrX">
<node concept="14ZrTv" id="49L2l3F7WoL" role="14ZwWg">
<node concept="30G5F_" id="49L2l3F7WoM" role="150hEN">
<node concept="3clFbS" id="49L2l3F7WoN" role="2VODD2">
<node concept="3clFbF" id="49L2l3F7WoY" role="3cqZAp">
<node concept="2OqwBi" id="49L2l3F7Wp0" role="3clFbG">
<node concept="2OqwBi" id="6MYr6Jxp5Zj" role="2Oq$k0">
<node concept="2OqwBi" id="6MYr6Jxp5Zk" role="2Oq$k0">
<node concept="2OqwBi" id="6MYr6Jxp5Zl" role="2Oq$k0">
<node concept="1iwH7S" id="6MYr6Jxp5Zm" role="2Oq$k0" />
<node concept="3cR$yn" id="6MYr6Jxp5Zn" role="2OqNvi">
<ref role="3cRzXn" node="49L2l3F7WoD" resolve="variable" />
</node>
</node>
<node concept="2qgKlT" id="6MYr6Jxp5Zo" role="2OqNvi">
<ref role="37wK5l" to="ha02:75vUFrSLzQL" resolve="getContainer" />
</node>
</node>
<node concept="3TrEf2" id="6MYr6Jxp5Zp" role="2OqNvi">
<ref role="3Tt5mk" to="5j4j:5zfvpQ72gqq" resolve="dataType" />
</node>
</node>
<node concept="3w_OXm" id="49L2l3F7Wp2" role="2OqNvi" />
</node>
</node>
</node>
</node>
<node concept="1Koe21" id="49L2l3F7Wp7" role="150oIE">
<node concept="3uibUv" id="49L2l3F7WC9" role="1Koe22">
<ref role="3uigEE" to="6exd:1bm7a6EXvsP" resolve="DataForm" />
<node concept="raruj" id="49L2l3F7WCe" role="lGtFl" />
</node>
</node>
</node>
<node concept="gft3U" id="5f6wxQ31YIO" role="14YRTM">
<node concept="3uibUv" id="5f6wxQ31YJ2" role="gfFT$">
<ref role="3uigEE" to="wyt6:~Object" resolve="Object" />
<node concept="29HgVG" id="5f6wxQ31YJ3" role="lGtFl">
<node concept="3NFfHV" id="5f6wxQ31YJ4" role="3NFExx">
<node concept="3clFbS" id="5f6wxQ31YJ5" role="2VODD2">
<node concept="3clFbF" id="5f6wxQ31YJ6" role="3cqZAp">
<node concept="1UaxmW" id="5f6wxQ31YJ7" role="3clFbG">
<node concept="1YaCAy" id="5f6wxQ31YJ8" role="1Ub_4A">
<property role="TrG5h" value="_" />
<ref role="1YaFvo" to="tpee:g7uibYu" resolve="ClassifierType" />
</node>
<node concept="2OqwBi" id="5f6wxQ31YJ9" role="1Ub_4B">
<node concept="2OqwBi" id="5f6wxQ31YJa" role="2Oq$k0">
<node concept="2OqwBi" id="5f6wxQ31YJb" role="2Oq$k0">
<node concept="1iwH7S" id="5f6wxQ31YJc" role="2Oq$k0" />
<node concept="3cR$yn" id="5f6wxQ31YJd" role="2OqNvi">
<ref role="3cRzXn" node="49L2l3F7WoD" resolve="variable" />
</node>
</node>
<node concept="2qgKlT" id="5f6wxQ31YJe" role="2OqNvi">
<ref role="37wK5l" to="ha02:75vUFrSLzQL" resolve="getContainer" />
</node>
</node>
<node concept="3TrEf2" id="5f6wxQ31YJf" role="2OqNvi">
<ref role="3Tt5mk" to="5j4j:5zfvpQ72gqq" resolve="dataType" />
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node concept="1N15co" id="49L2l3F7WoD" role="1s_3oS">
<property role="TrG5h" value="variable" />
<node concept="3Tqbb2" id="49L2l3F7WoE" role="1N15GL">
<ref role="ehGHo" to="5j4j:7E86$tKtfM3" resolve="LogicalVariableDeclaration" />
</node>
</node>
<node concept="j$LIH" id="65DJywF5lSX" role="jxRDz">
<node concept="1lLz0L" id="65DJywF5lT9" role="1lHHLF">
<property role="1lMjX7" value="h1lM37o/error" />
<property role="1lLB17" value="invalid usage" />
</node>
</node>
</node>
<node concept="13MO4I" id="3yhgKRI8wlP">
<property role="TrG5h" value="rulemethod_instance_decorate" />
<property role="3GE5qa" value="rulemethod" />
@ -9097,21 +8969,13 @@
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="1sPUBX" id="12QmIo_3vhR" role="lGtFl">
<ref role="v9R2y" node="1sCZQVfjxsX" resolve="variable_class" />
<node concept="1UUvTB" id="12QmIo_3vhS" role="v9R3O">
<node concept="1UU6SM" id="12QmIo_3vhT" role="1UU7Ll">
<node concept="3clFbS" id="12QmIo_3vhU" role="2VODD2">
<node concept="3clFbF" id="12QmIo_3vhV" role="3cqZAp">
<node concept="30H73N" id="12QmIo_3vhW" role="3clFbG" />
</node>
</node>
</node>
</node>
<node concept="3NFfHV" id="7Cu8ExJfGXd" role="1sPUBK">
<node concept="3clFbS" id="7Cu8ExJfGXe" role="2VODD2">
<node concept="3clFbF" id="7Cu8ExJfGXn" role="3cqZAp">
<node concept="2c44tf" id="7Cu8ExJfGXo" role="3clFbG">
<node concept="3VsKOn" id="7Cu8ExJfGXp" role="2c44tc">
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="3clFbF" id="6zber0NI1BV" role="3cqZAp">
<node concept="2OqwBi" id="6zber0NI1BW" role="3clFbG">
<node concept="30H73N" id="6zber0NI1BX" role="2Oq$k0" />
<node concept="2qgKlT" id="6zber0NI1BY" role="2OqNvi">
<ref role="37wK5l" to="ha02:75vUFrSLzQL" resolve="getContainer" />
</node>
</node>
</node>
@ -9226,21 +9090,13 @@
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="1sPUBX" id="12QmIo_3_hM" role="lGtFl">
<ref role="v9R2y" node="1sCZQVfjxsX" resolve="variable_class" />
<node concept="1UUvTB" id="12QmIo_3_hN" role="v9R3O">
<node concept="1UU6SM" id="12QmIo_3_hO" role="1UU7Ll">
<node concept="3clFbS" id="12QmIo_3_hP" role="2VODD2">
<node concept="3clFbF" id="12QmIo_3_hQ" role="3cqZAp">
<node concept="30H73N" id="12QmIo_3_hR" role="3clFbG" />
</node>
</node>
</node>
</node>
<node concept="3NFfHV" id="12QmIo_3_hS" role="1sPUBK">
<node concept="3clFbS" id="12QmIo_3_hT" role="2VODD2">
<node concept="3clFbF" id="12QmIo_3_hU" role="3cqZAp">
<node concept="2c44tf" id="12QmIo_3_hV" role="3clFbG">
<node concept="3VsKOn" id="12QmIo_3_hW" role="2c44tc">
<ref role="3VsUkX" to="wyt6:~Object" resolve="Object" />
<node concept="3clFbF" id="6zber0NI1Wu" role="3cqZAp">
<node concept="2OqwBi" id="6zber0NI1Wv" role="3clFbG">
<node concept="30H73N" id="6zber0NI1Ww" role="2Oq$k0" />
<node concept="2qgKlT" id="6zber0NI1Wx" role="2OqNvi">
<ref role="37wK5l" to="ha02:75vUFrSLzQL" resolve="getContainer" />
</node>
</node>
</node>