Home » Archived » M2M (model-to-model transformation) » [ATL] "OclUndefined has no property" when compiling ATL
[ATL] "OclUndefined has no property" when compiling ATL [message #59310] |
Fri, 24 August 2007 11:14 ![Go to next message Go to next message](theme/Solstice/images/down.png) |
Eclipse User![Friend of Eclipse Friend](/donate/web-api/friends_decorator.php?email=) |
|
|
|
Originally posted by: r.c.ladan.tue.nl
This is a multi-part message in MIME format.
--------------020206070800060801080301
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Hi,
for some ATL files I get the following kind of error when compiling them. I'm using atl2006 with ATL 2.0RC2 (CVS, updated 2007-08-24).
Unfortunately, the line numbers mentioned are of the not-yet-existent asm file.
I've attached the ATL and the km3 files.
Does anyone know how to solve this?
Thanks,
Rene
SEVERE: ****** BEGIN Stack Trace
SEVERE: message: ERROR: OclUndefined has no property
SEVERE: A.main(1 : S) : ??#25 null
SEVERE: local variables = {WriteTo='C:/Documents and Settings/rladan/workspace/trans2/sc_add_repository.asm', self=ATLCompiler : ASMModule}
SEVERE: local stack = []
SEVERE: MATL!Module;.process() : ??#794 159:3-159:24
SEVERE: local variables = {null=temp!copy_AssociationEnd, null=Sequence {temp!add_repository, temp!add_Edge, temp!copy_MetaModel, temp!copy_BehaviourElement, temp!copy_ClassInstance, temp!copy_SubDiagram, temp!copy_Message, temp!copy_DeploymentElement, temp!copy_DeploymentConnection, temp!copy_DeploymentDependency, temp!copy_CommunicationLine, temp!copy_DeploymentNode, temp!copy_DeviceNode, temp!copy_ProcessorNode, temp!copy_MemoryNode, temp!copy_ProgramNode, temp!copy_Component, temp!copy_ScenarioElement, temp!copy_Scenario, temp!copy_Port, temp!copy_ScenarioNode, temp!copy_Operation, temp!copy_Edge, temp!copy_TriggerLink, temp!copy_Trigger, temp!copy_ProvidesPort, temp!copy_RequiresPort, temp!copy_ServiceInstance, temp!copy_StructuralElement, temp!copy_StructuralConnection, temp!copy_SimpleConnection, temp!copy_StructuralDependency, temp!copy_Generalization, temp!copy_Association, temp!copy_StructuralNode, temp!copy_Class, temp!copy_Attribute, temp!copy_Method, temp!copy_
Package, temp!copy_AssociationEnd}, self=temp!sc_add_repository}
SEVERE: local stack = []
SEVERE: MATL!MatchedRule;.process() : ??#17 249:3-249:26
SEVERE: local variables = {self=temp!add_repository}
SEVERE: local stack = []
SEVERE: MATL!MatchedRule;.process_apply() : ??#164 465:10-465:66
SEVERE: local variables = {forEach=Sequence {temp!<unnamed>, temp!<unnamed>, temp!<unnamed>, temp!<unnamed>, temp!<unnamed>}, ipe=temp!<unnamed>, forEach=Sequence {temp!<unnamed>}, self=temp!add_repository, forEach=Sequence {}, ope=temp!<unnamed>}
SEVERE: local stack = []
SEVERE: MATL!SimpleOutPatternElement;.process_apply() : ??#28 528:3-528:29
SEVERE: local variables = {self=temp!<unnamed>}
SEVERE: local stack = []
SEVERE: MATL!Binding;.process() : ??#20 535:3-535:21
SEVERE: local variables = {self=temp!<unnamed>}
SEVERE: local stack = []
SEVERE: MATL!NavigationOrAttributeCallExp;.process() : ??#12 1036:3-1036:22
SEVERE: local variables = {self=temp!isStart}
SEVERE: local stack = []
SEVERE: MATL!VariableExp;.process() : ??#90 1007:3-1007:49
SEVERE: local variables = {self=temp!<unnamed>}
SEVERE: local stack = [org.eclipse.m2m.atl.engine.vm.ASMEmitter@1ad7794, 'load']
SEVERE: ****** END Stack Trace
INFO: Execution terminated due to error (see launch configuration to allow continuation after errors).
SEVERE: ERROR: OclUndefined has no property
java.lang.RuntimeException: ERROR: OclUndefined has no property
at org.eclipse.m2m.atl.engine.vm.SimpleDebugger.error(SimpleDeb ugger.java:185)
at org.eclipse.m2m.atl.engine.vm.StackFrame.printStackTrace(Sta ckFrame.java:85)
at org.eclipse.m2m.atl.engine.vm.StackFrame.printStackTrace(Sta ckFrame.java:81)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclUndefined.get( ASMOclUndefined.java:29)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:288)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
at org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
at org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
at org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:325)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
at org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:325)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
at org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
at org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:325)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
at org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
at org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
at org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
at org.eclipse.m2m.atl.engine.vm.ASMInterpreter.<init>(ASMInterpreter.java:289)
at org.eclipse.m2m.atl.engine.AtlLauncher.launch(AtlLauncher.ja va:161)
at org.eclipse.m2m.atl.engine.AtlLauncher.launch(AtlLauncher.ja va:105)
at org.eclipse.m2m.atl.engine.AtlLauncher.launch(AtlLauncher.ja va:81)
at org.eclipse.m2m.atl.engine.AtlDefaultCompiler.internalCompil e(AtlDefaultCompiler.java:152)
at org.eclipse.m2m.atl.engine.AtlDefaultCompiler.compileWithPro blemModel(AtlDefaultCompiler.java:49)
at org.eclipse.m2m.atl.engine.AtlCompiler.compile(AtlCompiler.j ava:85)
at org.eclipse.m2m.atl.adt.builder.AtlBuildVisitor.visit(AtlBui ldVisitor.java:76)
at org.eclipse.core.internal.resources.Resource$2.visit(Resourc e.java:105)
at org.eclipse.core.internal.resources.Resource$1.visitElement( Resource.java:57)
at org.eclipse.core.internal.watson.ElementTreeIterator.doItera tion(ElementTreeIterator.java:81)
at org.eclipse.core.internal.watson.ElementTreeIterator.doItera tion(ElementTreeIterator.java:85)
at org.eclipse.core.internal.watson.ElementTreeIterator.iterate (ElementTreeIterator.java:126)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:67)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:103)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:87)
at org.eclipse.m2m.atl.adt.builder.AtlBuilder.fullBuild(AtlBuil der.java:48)
at org.eclipse.m2m.atl.adt.builder.AtlBuilder$1.run(AtlBuilder. java:37)
at org.eclipse.core.internal.resources.Workspace.run(Workspace. java:1797)
at org.eclipse.core.internal.resources.Workspace.run(Workspace. java:1779)
at org.eclipse.m2m.atl.adt.builder.AtlBuilder.run(AtlBuilder.ja va:59)
at org.eclipse.m2m.atl.adt.builder.AtlBuilder.build(AtlBuilder. java:40)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildMan ager.java:624)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:166)
at org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:197)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildMan ager.java:246)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:249)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop (BuildManager.java:302)
at org.eclipse.core.internal.events.BuildManager.build(BuildMan ager.java:334)
at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBu ildJob.java:137)
at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJ ob.java:235)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
SEVERE: Resource '/trans2/sc_add_repository.asm' does not exist.
org.eclipse.core.internal.resources.ResourceException: Resource '/trans2/sc_add_repository.asm' does not exist.
at org.eclipse.core.internal.resources.Resource.checkExists(Res ource.java:310)
at org.eclipse.core.internal.resources.Resource.checkAccessible (Resource.java:193)
at org.eclipse.core.internal.resources.Resource.setDerived(Reso urce.java:1478)
at org.eclipse.m2m.atl.adt.builder.AtlBuildVisitor.visit(AtlBui ldVisitor.java:79)
at org.eclipse.core.internal.resources.Resource$2.visit(Resourc e.java:105)
at org.eclipse.core.internal.resources.Resource$1.visitElement( Resource.java:57)
at org.eclipse.core.internal.watson.ElementTreeIterator.doItera tion(ElementTreeIterator.java:81)
at org.eclipse.core.internal.watson.ElementTreeIterator.doItera tion(ElementTreeIterator.java:85)
at org.eclipse.core.internal.watson.ElementTreeIterator.iterate (ElementTreeIterator.java:126)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:67)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:103)
at org.eclipse.core.internal.resources.Resource.accept(Resource .java:87)
at org.eclipse.m2m.atl.adt.builder.AtlBuilder.fullBuild(AtlBuil der.java:48)
at org.eclipse.m2m.atl.adt.builder.AtlBuilder$1.run(AtlBuilder. java:37)
at org.eclipse.core.internal.resources.Workspace.run(Workspace. java:1797)
at org.eclipse.core.internal.resources.Workspace.run(Workspace. java:1779)
at org.eclipse.m2m.atl.adt.builder.AtlBuilder.run(AtlBuilder.ja va:59)
at org.eclipse.m2m.atl.adt.builder.AtlBuilder.build(AtlBuilder. java:40)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildMan ager.java:624)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:166)
at org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:197)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildMan ager.java:246)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:249)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop (BuildManager.java:302)
at org.eclipse.core.internal.events.BuildManager.build(BuildMan ager.java:334)
at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBu ildJob.java:137)
at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJ ob.java:235)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
--------------020206070800060801080301
Content-Type: text/plain;
name="meta.km3"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="meta.km3"
cGFja2FnZSBtZXRhIHsNCg0KCS0tIFRoZSBhdHRyaWJ1dGUgcGFydE9mVHJh bnNmb3JtYXRp
b24gaXMgbm90IG1lYW50IHRvIGJlIGNoYW5nZWQgYnkgdGhlIHVzZXINCg0K CS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t IE1ldGFNb2Rl
bCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0N
Cg0KCWNsYXNzIE1ldGFNb2RlbCB7DQoJCS0tIFRoaXMgY2xhc3MgaXMgYSBj b21iaW5hdGlv
biBvZiBCZWhhdmlvdXJNb2RlbCwgRGVwbG95bWVudE1vZGVsLCBTY2VuYXJp b01vZGVsLCBh
bmQgU3RydWN0dXJhbE1vZGVsDQoJCWF0dHJpYnV0ZSBwYXJ0T2ZUcmFuc2Zv cm1hdGlvbiA6
IEJvb2xlYW47DQoJCWF0dHJpYnV0ZSBpZCA6IFN0cmluZzsNCgkJcmVmZXJl bmNlIGJlaGF2
aW91ckVsZW1lbnRzWypdIGNvbnRhaW5lciA6IEJlaGF2aW91ckVsZW1lbnQg b3Bwb3NpdGVP
ZiBiZU1vZGVsOw0KCQlyZWZlcmVuY2UgZGVwbG95bWVudEVsZW1lbnRzWypd IGNvbnRhaW5l
ciA6IERlcGxveW1lbnRFbGVtZW50IG9wcG9zaXRlT2YgZGVNb2RlbDsNCgkJ cmVmZXJlbmNl
IHNjZW5hcmlvRWxlbWVudHNbKl0gY29udGFpbmVyIDogU2NlbmFyaW9FbGVt ZW50IG9wcG9z
aXRlT2Ygc2NNb2RlbDsNCgkJcmVmZXJlbmNlIHN0cnVjdHVyYWxFbGVtZW50 c1sqXSBjb250
YWluZXIgOiBTdHJ1Y3R1cmFsRWxlbWVudCBvcHBvc2l0ZU9mIHN0TW9kZWw7 DQoJfQ0KDQoJ
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LS0gQmVoYXZpb3VyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LS0tLS0tLQ0KDQoJYWJzdHJhY3QgY2xhc3MgQmVoYXZpb3VyRWxlbWVudCB7 DQoJCWF0dHJp
YnV0ZSBwYXJ0T2ZUcmFuc2Zvcm1hdGlvbiA6IEJvb2xlYW47DQoJCWF0dHJp YnV0ZSBpZCA6
IFN0cmluZzsNCgkJYXR0cmlidXRlIG5hbWUgOiBTdHJpbmc7DQoJCXJlZmVy ZW5jZSBiZU1v
ZGVsWzAtMV0gOiBNZXRhTW9kZWwgb3Bwb3NpdGVPZiBiZWhhdmlvdXJFbGVt ZW50czsNCgl9
DQoNCgljbGFzcyBDbGFzc0luc3RhbmNlIGV4dGVuZHMgQmVoYXZpb3VyRWxl bWVudCB7DQoJ
CWF0dHJpYnV0ZSBhY3RvclswLTFdIDogQm9vbGVhbjsNCgkJcmVmZXJlbmNl IGtsYXNzWzAt
MV0gOiBDbGFzczsNCgkJcmVmZXJlbmNlIG1lc3NhZ2VbKl0gOiBNZXNzYWdl IG9wcG9zaXRl
T2YgY2xhc3NpbnN0YW5jZTsNCgl9DQoNCgljbGFzcyBTdWJEaWFncmFtIGV4 dGVuZHMgQmVo
YXZpb3VyRWxlbWVudCB7DQoJCWF0dHJpYnV0ZSBraW5kIDogU3RyaW5nOyAt LSBpZiAsIHJl
ZiAsIChldGMpDQoJCXJlZmVyZW5jZSBpbm5lclsqXSBjb250YWluZXIgOiBT dWJEaWFncmFt
IG9wcG9zaXRlT2Ygb3V0ZXI7DQoJCXJlZmVyZW5jZSBvdXRlclswLTFdIDog U3ViRGlhZ3Jh
bSBvcHBvc2l0ZU9mIGlubmVyOw0KCQlyZWZlcmVuY2UgbWVzc2FnZVsqXSBj b250YWluZXIg
OiBNZXNzYWdlIG9wcG9zaXRlT2Ygc3ViZGlhZ3JhbTsNCgl9DQoNCgljbGFz cyBNZXNzYWdl
IGV4dGVuZHMgQmVoYXZpb3VyRWxlbWVudCB7DQoJCWF0dHJpYnV0ZSBkZWFk bGluZVswLTFd
IDogSW50ZWdlcjsNCgkJYXR0cmlidXRlIHR5cGVbMC0xXSA6IFN0cmluZzsN CgkJYXR0cmli
dXRlIHRvU2VsZlswLTFdIDogQm9vbGVhbjsNCgkJYXR0cmlidXRlIGZyb21B YnNlbnRbMC0x
XSA6IEJvb2xlYW47DQoJCXJlZmVyZW5jZSBjbGFzc2luc3RhbmNlWzEtMl0g b3JkZXJlZCA6
IENsYXNzSW5zdGFuY2Ugb3Bwb3NpdGVPZiBtZXNzYWdlOw0KCQktLSBjbGFz c2luc3RhbmNl
WzFdID0gZnJvbSAoaWYgbm90IGZyb21BYnNlbnQpIG9yIHRvIChpZiB0b1Nl bGYpLA0KCQkt
LSBjbGFzc2luc3RhbmNlWzJdID0gdG8gKGlmIHByZXNlbnQgYW5kIG5vdCBm cm9tQWJzZW50
IGFuZCBub3QgdG9TZWxmKQ0KCQlyZWZlcmVuY2Ugc3ViZGlhZ3JhbVswLTFd IDogU3ViRGlh
Z3JhbSBvcHBvc2l0ZU9mIG1lc3NhZ2U7DQoJfQ0KDQoJLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tIERlcGxveW1lbnQgLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQoJ YWJzdHJhY3Qg
Y2xhc3MgRGVwbG95bWVudEVsZW1lbnQgew0KCQlhdHRyaWJ1dGUgcGFydE9m VHJhbnNmb3Jt
YXRpb24gOiBCb29sZWFuOw0KCQlhdHRyaWJ1dGUgaWQgOiBTdHJpbmc7DQoJ CWF0dHJpYnV0
ZSBmYWlsdXJlUmF0ZVswLTFdIDogRG91YmxlOw0KCQlyZWZlcmVuY2UgZGVN b2RlbFswLTFd
IDogTWV0YU1vZGVsIG9wcG9zaXRlT2YgZGVwbG95bWVudEVsZW1lbnRzOw0K CX0NCg0KCWFi
c3RyYWN0IGNsYXNzIERlcGxveW1lbnRDb25uZWN0aW9uIGV4dGVuZHMgRGVw bG95bWVudEVs
ZW1lbnQgew0KCQlhdHRyaWJ1dGUgbGFiZWxbMC0xXSA6IFN0cmluZzsNCgkJ cmVmZXJlbmNl
IGRzdCA6IERlcGxveW1lbnROb2RlIG9wcG9zaXRlT2YgaW5nb2luZzsNCgkJ cmVmZXJlbmNl
IHNyYyA6IERlcGxveW1lbnROb2RlIG9wcG9zaXRlT2Ygb3V0Z29pbmc7DQoJ fQ0KDQoJY2xh
c3MgRGVwbG95bWVudERlcGVuZGVuY3kgZXh0ZW5kcyBEZXBsb3ltZW50Q29u bmVjdGlvbiB7
fQ0KDQoJY2xhc3MgQ29tbXVuaWNhdGlvbkxpbmUgZXh0ZW5kcyBEZXBsb3lt ZW50Q29ubmVj
dGlvbiB7DQoJCWF0dHJpYnV0ZSBiYW5kd2lkdGhbMC0xXSA6IEludGVnZXI7 DQoJfQ0KDQoJ
YWJzdHJhY3QgY2xhc3MgRGVwbG95bWVudE5vZGUgZXh0ZW5kcyBEZXBsb3lt ZW50RWxlbWVu
dCB7DQoJCWF0dHJpYnV0ZSBuYW1lIDogU3RyaW5nOw0KCQlhdHRyaWJ1dGUg cGF0dGVybmFi
bGVbMC0xXSA6IEJvb2xlYW47DQoJCXJlZmVyZW5jZSBvdXRnb2luZ1sqXSA6 IERlcGxveW1l
bnRDb25uZWN0aW9uIG9wcG9zaXRlT2Ygc3JjOw0KCQlyZWZlcmVuY2UgaW5n b2luZ1sqXSA6
IERlcGxveW1lbnRDb25uZWN0aW9uIG9wcG9zaXRlT2YgZHN0Ow0KCX0NCg0K CWNsYXNzIERl
dmljZU5vZGUgZXh0ZW5kcyBEZXBsb3ltZW50Tm9kZSB7DQoJCXJlZmVyZW5j ZSBjb21wb25l
bnRbKl0gY29udGFpbmVyIDogQ29tcG9uZW50IG9wcG9zaXRlT2YgZGV2aWNl bm9kZTsNCgkJ
cmVmZXJlbmNlIGlubmVyWypdIGNvbnRhaW5lciA6IERldmljZU5vZGUgb3Bw b3NpdGVPZiBv
dXRlcjsNCgkJcmVmZXJlbmNlIG91dGVyWzAtMV0gOiBEZXZpY2VOb2RlIG9w cG9zaXRlT2Yg
aW5uZXI7DQoJfQ0KCQ0KCWNsYXNzIFByb2Nlc3Nvck5vZGUgZXh0ZW5kcyBE ZXZpY2VOb2Rl
IHsNCgkJYXR0cmlidXRlIGZyZXF1ZW5jeSA6IEludGVnZXI7DQoJfQ0KDQoJ Y2xhc3MgTWVt
b3J5Tm9kZSBleHRlbmRzIERldmljZU5vZGUgew0KCQlhdHRyaWJ1dGUgc2l6 ZSA6IEludGVn
ZXI7DQoJfQ0KDQoJLS0gdGhpcyBOb2RlIGNhbiBiZSByZWdhcmRlZCBhcyBh bGdvcml0aG1p
YyBpbnN0ZWFkIG9mIGhhcmR3YXJlDQoJY2xhc3MgUHJvZ3JhbU5vZGUgZXh0 ZW5kcyBEZXZp
Y2VOb2RlIHsNCgkJYXR0cmlidXRlIHNhbXBsZVJhdGUgOiBJbnRlZ2VyOw0K CX0NCgkNCglj
bGFzcyBDb21wb25lbnQgZXh0ZW5kcyBEZXBsb3ltZW50Tm9kZSB7DQoJCWF0 dHJpYnV0ZSB1
c2VzRW5jcnlwdGlvblswLTFdIDogQm9vbGVhbjsNCgkJcmVmZXJlbmNlIGRl dmljZW5vZGVb
MC0xXSA6IERldmljZU5vZGUgb3Bwb3NpdGVPZiBjb21wb25lbnQ7DQoJfQ0K DQoJLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0gU2NlbmFy
aW8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LQ0KCQ0KCWNsYXNzIFNjZW5hcmlvRWxlbWVudCB7DQoJCWF0dHJpYnV0ZSBw YXJ0T2ZUcmFu
c2Zvcm1hdGlvbiA6IEJvb2xlYW47DQoJCWF0dHJpYnV0ZSBOYW1lWzAtMV0g OiBTdHJpbmc7
DQoJCWF0dHJpYnV0ZSBpZCA6IFN0cmluZzsNCgkJYXR0cmlidXRlIGhlaWdo dFswLTFdIDog
SW50ZWdlcjsNCgkJYXR0cmlidXRlIHdpZHRoWzAtMV0gOiBJbnRlZ2VyOw0K CQlhdHRyaWJ1
dGUgeFswLTFdIDogSW50ZWdlcjsNCgkJYXR0cmlidXRlIHlbMC0xXSA6IElu dGVnZXI7DQoJ
CXJlZmVyZW5jZSBzY01vZGVsWzAtMV0gOiBNZXRhTW9kZWwgb3Bwb3NpdGVP ZiBzY2VuYXJp
b0VsZW1lbnRzOw0KCX0NCgkNCgljbGFzcyBTY2VuYXJpbyBleHRlbmRzIFNj ZW5hcmlvRWxl
bWVudCB7DQoJCXJlZmVyZW5jZSB0cmlnZ2Vyc1sqXSBjb250YWluZXIgOiBU cmlnZ2VyIG9w
cG9zaXRlT2Ygc2NlbmFyaW87DQoJCXJlZmVyZW5jZSB0cmlnZ2VyTGlua3Nb Kl0gY29udGFp
bmVyIDogVHJpZ2dlckxpbmsgb3Bwb3NpdGVPZiBzY2VuYXJpbzsNCgkJcmVm ZXJlbmNlIG5v
ZGVzWypdIGNvbnRhaW5lciA6IFNjZW5hcmlvTm9kZSBvcHBvc2l0ZU9mIHNj ZW5hcmlvOw0K
CQlyZWZlcmVuY2UgZWRnZXNbKl0gY29udGFpbmVyIDogRWRnZSBvcHBvc2l0 ZU9mIHNjZW5h
cmlvOw0KCX0NCgkNCgljbGFzcyBQb3J0IGV4dGVuZHMgU2NlbmFyaW9FbGVt ZW50IHsNCgkJ
YXR0cmlidXRlIHR5cGVbMC0xXSA6IFN0cmluZzsNCgl9DQoJDQoJY2xhc3Mg U2NlbmFyaW9O
b2RlIGV4dGVuZHMgU2NlbmFyaW9FbGVtZW50IHsNCgkJYXR0cmlidXRlIGlz U3RhcnQgOiBC
b29sZWFuOw0KCQlhdHRyaWJ1dGUgaXNGaW5pc2ggOiBCb29sZWFuOw0KCQlh dHRyaWJ1dGUg
Y29tcFJlZlswLTFdIDogU3RyaW5nOw0KCQlhdHRyaWJ1dGUgaXNCdWZmZXJb MC0xXSA6IEJv
b2xlYW47DQoJCWF0dHJpYnV0ZSBidWZmZXJTaXplS0J5dGVbMC0xXSA6IFN0 cmluZzsNCgkJ
cmVmZXJlbmNlIHNjZW5hcmlvIDogU2NlbmFyaW8gb3Bwb3NpdGVPZiBub2Rl czsNCgkJcmVm
ZXJlbmNlIGlucHV0c1sqXSBjb250YWluZXIgOiBQcm92aWRlc1BvcnQgb3Bw b3NpdGVPZiBu
b2RlOw0KCQlyZWZlcmVuY2Ugb3V0cHV0c1sqXSBjb250YWluZXIgOiBSZXF1 aXJlc1BvcnQg
b3Bwb3NpdGVPZiBub2RlOw0KCX0NCgkNCgljbGFzcyBPcGVyYXRpb24gZXh0 ZW5kcyBTY2Vu
YXJpb0VsZW1lbnQgew0KCQlyZWZlcmVuY2UgdHJpZ2dlckxpbmtzWypdIDog VHJpZ2dlckxp
bmsgb3Bwb3NpdGVPZiB0cmlnZ2VyVGFyZ2V0Ow0KCQlyZWZlcmVuY2UgcHJv dmlkZXNQb3J0
IDogUHJvdmlkZXNQb3J0IG9wcG9zaXRlT2Ygb3BlcmF0aW9uczsNCgl9DQoJ DQoJY2xhc3Mg
RWRnZSBleHRlbmRzIFNjZW5hcmlvRWxlbWVudCB7DQoJCXJlZmVyZW5jZSBz Y2VuYXJpbyA6
IFNjZW5hcmlvIG9wcG9zaXRlT2YgZWRnZXM7DQoJCXJlZmVyZW5jZSB0YXJn ZXQgOiBQcm92
aWRlc1BvcnQgb3Bwb3NpdGVPZiBlZGdlczsNCgkJcmVmZXJlbmNlIHNvdXJj ZSA6IFJlcXVp
cmVzUG9ydCBvcHBvc2l0ZU9mIGVkZ2VzOw0KCX0NCgkNCgljbGFzcyBUcmln Z2VyTGluayBl
eHRlbmRzIFNjZW5hcmlvRWxlbWVudCB7DQoJCXJlZmVyZW5jZSBzY2VuYXJp byA6IFNjZW5h
cmlvIG9wcG9zaXRlT2YgdHJpZ2dlckxpbmtzOw0KCQlyZWZlcmVuY2UgdHJp Z2dlclNvdXJj
ZSA6IFRyaWdnZXIgb3Bwb3NpdGVPZiB0cmlnZ2VyTGlua3M7DQoJCXJlZmVy ZW5jZSB0cmln
Z2VyVGFyZ2V0IDogT3BlcmF0aW9uIG9wcG9zaXRlT2YgdHJpZ2dlckxpbmtz Ow0KCX0NCgkN
CgljbGFzcyBUcmlnZ2VyIGV4dGVuZHMgU2NlbmFyaW9FbGVtZW50IHsNCgkJ YXR0cmlidXRl
IHBlcmlvZGljWzAtMV0gOiBCb29sZWFuOw0KCQlhdHRyaWJ1dGUgaml0dGVy WzAtMV0gOiBT
dHJpbmc7DQoJCWF0dHJpYnV0ZSBvZmZzZXRbMC0xXSA6IFN0cmluZzsNCgkJ YXR0cmlidXRl
IGRlYWRsaW5lWzAtMV0gOiBTdHJpbmc7DQoJCWF0dHJpYnV0ZSBwZXJpb2Rb MC0xXSA6IFN0
cmluZzsNCgkJYXR0cmlidXRlIG1pbkFycml2YWxJbnRlcnZhbFswLTFdIDog U3RyaW5nOw0K
CQlhdHRyaWJ1dGUgcHJlY2VkZWRCeVRhc2tbMC0xXSA6IFN0cmluZzsNCgkJ YXR0cmlidXRl
IHByaW9yaXR5WzAtMV0gOiBTdHJpbmc7DQoJCXJlZmVyZW5jZSBzY2VuYXJp byA6IFNjZW5h
cmlvIG9wcG9zaXRlT2YgdHJpZ2dlcnM7DQoJCXJlZmVyZW5jZSB0cmlnZ2Vy TGlua3NbKl0g
OiBUcmlnZ2VyTGluayBvcHBvc2l0ZU9mIHRyaWdnZXJTb3VyY2U7DQoJfQ0K DQoJY2xhc3Mg
UHJvdmlkZXNQb3J0IGV4dGVuZHMgUG9ydCB7DQoJCXJlZmVyZW5jZSBub2Rl IDogU2NlbmFy
aW9Ob2RlIG9wcG9zaXRlT2YgaW5wdXRzOw0KCQlyZWZlcmVuY2UgZWRnZXNb Kl0gOiBFZGdl
IG9wcG9zaXRlT2YgdGFyZ2V0Ow0KCQlyZWZlcmVuY2Ugb3BlcmF0aW9uc1sq XSBjb250YWlu
ZXIgOiBPcGVyYXRpb24gb3Bwb3NpdGVPZiBwcm92aWRlc1BvcnQ7DQoJfQ0K CQ0KCWNsYXNz
IFJlcXVpcmVzUG9ydCBleHRlbmRzIFBvcnQgew0KCQlyZWZlcmVuY2Ugbm9k ZSA6IFNjZW5h
cmlvTm9kZSBvcHBvc2l0ZU9mIG91dHB1dHM7DQoJCXJlZmVyZW5jZSBlZGdl c1sqXSA6IEVk
Z2Ugb3Bwb3NpdGVPZiBzb3VyY2U7DQoJfQ0KDQoJY2xhc3MgU2VydmljZUlu c3RhbmNlIGV4
dGVuZHMgU2NlbmFyaW9Ob2RlIHt9DQoNCgktLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tIFN0cnVjdHVyYWwgLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCglhYnN0cmFj dCBjbGFzcyBT
dHJ1Y3R1cmFsRWxlbWVudCB7DQoJCWF0dHJpYnV0ZSBwYXJ0T2ZUcmFuc2Zv cm1hdGlvbiA6
IEJvb2xlYW47DQoJCWF0dHJpYnV0ZSBpZCA6IFN0cmluZzsNCgkJcmVmZXJl bmNlIHN0TW9k
ZWxbMC0xXSA6IE1ldGFNb2RlbCBvcHBvc2l0ZU9mIHN0cnVjdHVyYWxFbGVt ZW50czsNCgl9
DQoNCglhYnN0cmFjdCBjbGFzcyBTdHJ1Y3R1cmFsQ29ubmVjdGlvbiBleHRl bmRzIFN0cnVj
dHVyYWxFbGVtZW50IHsNCgkJcmVmZXJlbmNlIHNyYyA6IFN0cnVjdHVyYWxO b2RlIG9wcG9z
aXRlT2Ygb3V0Z29pbmc7DQoJCXJlZmVyZW5jZSBkc3QgOiBTdHJ1Y3R1cmFs Tm9kZSBvcHBv
c2l0ZU9mIGluZ29pbmc7DQoJfQ0KCQ0KCWFic3RyYWN0IGNsYXNzIFNpbXBs ZUNvbm5lY3Rp
b24gZXh0ZW5kcyBTdHJ1Y3R1cmFsQ29ubmVjdGlvbiB7fQ0KCQ0KCWNsYXNz IFN0cnVjdHVy
YWxEZXBlbmRlbmN5IGV4dGVuZHMgU2ltcGxlQ29ubmVjdGlvbiB7fQ0KCQ0K CWNsYXNzIEdl
bmVyYWxpemF0aW9uIGV4dGVuZHMgU2ltcGxlQ29ubmVjdGlvbiB7fQ0KCQ0K CWNsYXNzIEFz
c29jaWF0aW9uIGV4dGVuZHMgU3RydWN0dXJhbENvbm5lY3Rpb24gew0KCQly ZWZlcmVuY2Ug
YXNzb2NpYXRpb25lbmRbMi0yXSA6IEFzc29jaWF0aW9uRW5kIG9wcG9zaXRl T2YgYXNzb2Np
YXRpb247DQoJfQ0KCQ0KCWFic3RyYWN0IGNsYXNzIFN0cnVjdHVyYWxOb2Rl IGV4dGVuZHMg
U3RydWN0dXJhbEVsZW1lbnQgew0KCQlhdHRyaWJ1dGUgbmFtZSA6IFN0cmlu ZzsNCgkJYXR0
cmlidXRlIHN0ZXJlb3R5cGVbMC0xXSA6IFN0cmluZzsNCgkJcmVmZXJlbmNl IG91dGdvaW5n
WypdIDogU3RydWN0dXJhbENvbm5lY3Rpb24gb3Bwb3NpdGVPZiBzcmM7DQoJ CXJlZmVyZW5j
ZSBpbmdvaW5nWypdIDogU3RydWN0dXJhbENvbm5lY3Rpb24gb3Bwb3NpdGVP ZiBkc3Q7DQoJ
fQ0KCQ0KCWNsYXNzIENsYXNzIGV4dGVuZHMgU3RydWN0dXJhbE5vZGUgew0K CQlhdHRyaWJ1
dGUgQWJzdHJhY3RbMC0xXSA6IEJvb2xlYW47DQoJCXJlZmVyZW5jZSBhdHRy aWJbKl0gY29u
dGFpbmVyIDogQXR0cmlidXRlIG9wcG9zaXRlT2Yga2xhc3M7DQoJCXJlZmVy ZW5jZSBtZXRo
b2RbKl0gY29udGFpbmVyIDogTWV0aG9kIG9wcG9zaXRlT2Yga2xhc3M7DQoJ CXJlZmVyZW5j
ZSBwa2dbMC0xXSA6IFBhY2thZ2Ugb3Bwb3NpdGVPZiBrbGFzczsNCgkJcmVm ZXJlbmNlIGFz
c29jaWF0aW9uZW5kWypdIGNvbnRhaW5lciA6IEFzc29jaWF0aW9uRW5kIG9w cG9zaXRlT2Yg
a2xhc3M7DQoJfQ0KCQ0KCWNsYXNzIEF0dHJpYnV0ZSBleHRlbmRzIFN0cnVj dHVyYWxFbGVt
ZW50IHsNCgkJYXR0cmlidXRlIG5hbWUgOiBTdHJpbmc7DQoJCXJlZmVyZW5j ZSBrbGFzcyA6
IENsYXNzIG9wcG9zaXRlT2YgYXR0cmliOw0KCX0NCgkNCgljbGFzcyBNZXRo b2QgZXh0ZW5k
cyBTdHJ1Y3R1cmFsRWxlbWVudCB7DQoJCWF0dHJpYnV0ZSBuYW1lIDogU3Ry aW5nOw0KCQly
ZWZlcmVuY2Uga2xhc3MgOiBDbGFzcyBvcHBvc2l0ZU9mIG1ldGhvZDsNCgl9 DQoJDQoJY2xh
c3MgUGFja2FnZSBleHRlbmRzIFN0cnVjdHVyYWxOb2RlIHsNCgkJcmVmZXJl bmNlIGlubmVy
WypdIGNvbnRhaW5lciA6IFBhY2thZ2Ugb3Bwb3NpdGVPZiBvdXRlcjsNCgkJ cmVmZXJlbmNl
IG91dGVyWzAtMV0gOiBQYWNrYWdlIG9wcG9zaXRlT2YgaW5uZXI7DQoJCXJl ZmVyZW5jZSBr
bGFzc1sqXSBjb250YWluZXIgOiBDbGFzcyBvcHBvc2l0ZU9mIHBrZzsNCgl9 DQoJDQoJY2xh
c3MgQXNzb2NpYXRpb25FbmQgZXh0ZW5kcyBTdHJ1Y3R1cmFsTm9kZSB7DQoJ CWF0dHJpYnV0
ZSB0cmFuc2llbnRbMC0xXSA6IEJvb2xlYW47DQoJCWF0dHJpYnV0ZSB2b2xh dGlsZVswLTFd
IDogQm9vbGVhbjsNCgkJYXR0cmlidXRlIGNoYW5nZWFibGVbMC0xXSA6IEJv b2xlYW47DQoJ
CWF0dHJpYnV0ZSBsb3dlckJvdW5kWzAtMV0gOiBJbnRlZ2VyOw0KCQlhdHRy aWJ1dGUgbmF2
aWdhYmxlWzAtMV0gOiBCb29sZWFuOw0KCQlhdHRyaWJ1dGUgdHlwZVswLTFd IDogU3RyaW5n
Ow0KCQlhdHRyaWJ1dGUgdXBwZXJCb3VuZFswLTFdIDogSW50ZWdlcjsNCgkJ cmVmZXJlbmNl
IGFzc29jaWF0aW9uIDogQXNzb2NpYXRpb24gb3Bwb3NpdGVPZiBhc3NvY2lh dGlvbmVuZDsN
CgkJcmVmZXJlbmNlIGtsYXNzIDogQ2xhc3Mgb3Bwb3NpdGVPZiBhc3NvY2lh dGlvbmVuZDsN
Cgl9DQp9DQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LS0gZGF0YXR5cGVzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCnBhY2thZ2UgUHJpbWl0aXZlVHlw ZXMgew0KCWRh
dGF0eXBlIFN0cmluZzsNCglkYXRhdHlwZSBEb3VibGU7DQoJZGF0YXR5cGUg SW50ZWdlcjsN
CglkYXRhdHlwZSBCb29sZWFuOw0KfQ==
--------------020206070800060801080301
Content-Type: text/plain;
name="sc_add_repository.atl"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="sc_add_repository.atl"
LS1AYXRsY29tcGlsZXIgYXRsMjAwNgptb2R1bGUgc2NfYWRkX3JlcG9zaXRv cnk7CmNyZWF0
ZSBPVVQgOiBtZXRhIGZyb20gSU4gOiBtZXRhOwoKLS0gVHJhbnNmb3JtYXRp b24gaW5mSGlk
aW5nL2RhdGFJbnRlZ3JhdGlvbiAoc2NlbmFyaW8pCgpydWxlIGFkZF9yZXBv c2l0b3J5IGV4
dGVuZHMgY29weV9TZXJ2aWNlSW5zdGFuY2UgewoJZnJvbQoJCXNlIDogbWV0 YSFTZXJ2aWNl
SW5zdGFuY2UsCgkJYzEyIDogbWV0YSFTZXJ2aWNlSW5zdGFuY2Uoc2UucGFy dE9mVHJhbnNm
b3JtYXRpb24gYW5kIGMxMi5wYXJ0T2ZUcmFuc2Zvcm1hdGlvbiBhbmQgYzEy IDw+IHNlIGFu
ZCBub3QgdGhpc01vZHVsZS5pc0FscmVhZHlDb25zaWRlcmVkKHNlLCBjMTIp KQoJdG8KCQlz
ZTEgOiBtZXRhIVNlcnZpY2VJbnN0YW5jZSwKCQljMjIgOiBtZXRhIVNlcnZp Y2VJbnN0YW5j
ZSgKCQkJaXNTdGFydCA8LSBjMTIuaXNTdGFydCwKCQkJaXNGaW5pc2ggPC0g YzEyLmlzRmlu
aXNoLAoJCQljb21wUmVmIDwtIGMxMi5jb21wUmVmLAoJCQlpc0J1ZmZlciA8 LSBjMTIuaXNC
dWZmZXIsCgkJCWJ1ZmZlclNpemVLQnl0ZSA8LSBjMTIuYnVmZmVyU2l6ZUtC eXRlLAoJCQlz
Y2VuYXJpbyA8LSBjMTIuc2NlbmFyaW8sCgkJCWlucHV0cyA8LSBjMTIuaW5w dXRzLAoJCQlv
dXRwdXRzIDwtIGMxMi5vdXRwdXRzLAoJCQlOYW1lIDwtIGMxMi5OYW1lLAoJ CQlpZCA8LSBj
MTIuaWQgKyAnMicsCgkJCWhlaWdodCA8LSBjMTIuaGVpZ2h0LAoJCQl3aWR0 aCA8LSBjMTIu
d2lkdGgsCgkJCXggPC0gYzEyLngsCgkJCXkgPC0gYzEyLnksCgkJCXNjTW9k ZWwgPC0gYzEy
LnNjTW9kZWwKCQkpLAoJCXJlcG8gOiBtZXRhIVNlcnZpY2VJbnN0YW5jZSgK CQkJaXNCdWZm
ZXIgPC0gdHJ1ZSwKCQkJc2NlbmFyaW8gPC0gc2Uuc2NlbmFyaW8sCgkJCWlu cHV0cyA8LSBT
ZXF1ZW5jZXtwcF9yZXBvfSwKCQkJb3V0cHV0cyA8LSBTZXF1ZW5jZXtycF9y ZXBvfSwKCQkJ
TmFtZSA8LSAncmVwb3NpdG9yeScsCgkJCWlkIDwtIHNlLmlkICsgJ2QwMDEn LAoJCQlzY01v
ZGVsIDwtIHNlLnNjTW9kZWwKCQkpLAoJCXBwX3JlcG8gOiBtZXRhIVByb3Zp ZGVzUG9ydCgK
CQkJTmFtZSA8LSAncHBfcmVwbycsCgkJCWlkIDwtIHNlLmlkICsgJ3BwX3Jl cG8nLAoJCQlz
Y01vZGVsIDwtIHNlLnNjTW9kZWwKCQkpLAoJCXJwX3JlcG8gOiBtZXRhIVJl cXVpcmVzUG9y
dCgKCQkJTmFtZSA8LSAncnBfcmVwbycsCgkJCWlkIDwtIHNlLmlkICsgJ3Jw X3JlcG8nLAoJ
CQlzY01vZGVsIDwtIHNlLnNjTW9kZWwKCQkpCn0KCnJ1bGUgYWRkX0VkZ2Ug ZXh0ZW5kcyBj
b3B5X0VkZ2UgewoJZnJvbQoJCXNlIDogbWV0YSFFZGdlKHNlLnBhcnRPZlRy YW5zZm9ybWF0
aW9uKQoJdG8KCQlzZTEgOiBtZXRhIUVkZ2UoCgkJCXRhcmdldCA8LSB0aGlz TW9kdWxlLnJl
c29sdmVUZW1wKHNlLnRhcmdldC5ub2RlLCAncHBfcmVwbycpIC0tIEZJWE1F IGNyYXNoCgkJ
KSwKCQlzZTIgOiBtZXRhIUVkZ2UoCgkJCXNjZW5hcmlvIDwtIHNlLnNjZW5h cmlvLAoJCQlz
b3VyY2UgPC0gdGhpc01vZHVsZS5yZXNvbHZlVGVtcChzZS50YXJnZXQubm9k ZSwgJ3JwX3Jl
cG8nKSwgLS0gRklYTUUgY3Jhc2gKCQkJdGFyZ2V0IDwtIHNlLnRhcmdldCwK CQkJTmFtZSA8
LSAnQ29weSBvZiAnICsgc2UuTmFtZSwKCQkJaWQgPC0gJ0NvcHkgb2YgJyAr IHNlLmlkLAoJ
CQlzY01vZGVsIDwtIHNlLnNjTW9kZWwKCQkpCn0KCi0tIGZyb20gcmNoZXZy ZWxAc29kaXVz
LmNvbSBvbiBuZXdzZ3JvdXAgZWNsaXBzZS5tb2RlbGluZy5tMm0gb24gbmV3 cy5lY2xpcHNl
Lm9yZwpoZWxwZXIgZGVmIDogYXNzb01hcCA6IE1hcChtZXRhIVNlcnZpY2VJ bnN0YW5jZSwg
U2VxdWVuY2UobWV0YSFTZXJ2aWNlSW5zdGFuY2UpKSA9CglNYXB7fTsKcnVs ZSBpc0FscmVh
ZHlDb25zaWRlcmVkKHJlZjEgOiBtZXRhIVNlcnZpY2VJbnN0YW5jZSwgcmVm MiA6IG1ldGEh
U2VydmljZUluc3RhbmNlKSB7CiAgICB1c2luZyB7CiAgICAgICAgIHNlcSA6 IFNlcXVlbmNl
KG1ldGEhU2VydmljZUluc3RhbmNlKSA9CiAgICAgICAgICAgIGlmIHRoaXNN b2R1bGUuYXNz
b01hcC5nZXQocmVmMSkub2NsSXNVbmRlZmluZWQoKQogICAgICAgICAgICAg ICB0aGVuIFNl
cXVlbmNle30KICAgICAgICAgICAgICAgZWxzZSB0aGlzTW9kdWxlLmFzc29N YXAuZ2V0KHJl
ZjEpCiAgICAgICAgICAgIGVuZGlmOwogICAgfSBkbyB7CiAgICAgICAgIGlm IChub3QgdGhp
c01vZHVsZS5hc3NvTWFwLmdldChyZWYyKS5vY2xJc1VuZGVmaW5lZCgpKSB7 CiAgICAgICAg
ICAgICAgaWYgKHRoaXNNb2R1bGUuYXNzb01hcC5nZXQocmVmMiktPmluY2x1 ZGVzKHJlZjEp
KSB7CiAgICAgICAgICAgICAgICAgICB0cnVlOwogICAgICAgICAgICAgIH0K ICAgICAgICAg
ICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgIHRoaXNNb2R1bGUuYXNz b01hcCA8LSB0
aGlzTW9kdWxlLmFzc29NYXAuaW5jbHVkaW5nKHJlZjEsIHNlcS0+aW5jbHVk aW5nKHJlZjIp
KTsKICAgICAgICAgICAgICAgICAgIGZhbHNlOwogICAgICAgICAgICAgIH0K ICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgIHRoaXNNb2R1bGUuYXNzb01hcCA8LSB0 aGlzTW9kdWxl
LmFzc29NYXAuaW5jbHVkaW5nKHJlZjEsIHNlcS0+aW5jbHVkaW5nKHJlZjIp KTsKICAgICAg
ICAgICAgICBmYWxzZTsKICAgICAgICB9CiAgICB9Cn0gCgotLS0tLS0tLS0t LS0tLS0tLS0t
LS0tLS0tLS0tLS1NZXRhTW9kZWwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LS0tLS0tCgpydWxlIGNvcHlfTWV0YU1vZGVsIHsKCWZyb20gbW0gOiBtZXRh IU1ldGFNb2Rl
bAoJdG8gbW0xIDogbWV0YSFNZXRhTW9kZWwoCgkJaWQgPC0gbW0uaWQsCgkJ YmVoYXZpb3Vy
RWxlbWVudHMgPC0gbW0uYmVoYXZpb3VyRWxlbWVudHMsCgkJZGVwbG95bWVu dEVsZW1lbnRz
IDwtIG1tLmRlcGxveW1lbnRFbGVtZW50cywKCQlzY2VuYXJpb0VsZW1lbnRz IDwtIG1tLnNj
ZW5hcmlvRWxlbWVudHMsCgkJc3RydWN0dXJhbEVsZW1lbnRzIDwtIG1tLnN0 cnVjdHVyYWxF
bGVtZW50cwoJKQp9CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tU2VxdWVu
Y2UtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgphYnN0 cmFjdCBydWxl
IGNvcHlfQmVoYXZpb3VyRWxlbWVudCB7Cglmcm9tIGJlIDogbWV0YSFCZWhh dmlvdXJFbGVt
ZW50Cgl0byBiZTEgOiBtZXRhIUJlaGF2aW91ckVsZW1lbnQoCgkJaWQgPC0g YmUuaWQsCgkJ
bmFtZSA8LSBiZS5uYW1lCgkJLS0gYmVNb2RlbCBjb3BpZWQgYnkgY29weV9N ZXRhTW9kZWwg
KGNvbnRhaW5lZCkKCSkKfQoKcnVsZSBjb3B5X0NsYXNzSW5zdGFuY2UgZXh0 ZW5kcyBjb3B5
X0JlaGF2aW91ckVsZW1lbnQgewoJZnJvbSBiZSA6IG1ldGEhQ2xhc3NJbnN0 YW5jZQoJdG8g
YmUxIDogbWV0YSFDbGFzc0luc3RhbmNlKAoJCWFjdG9yIDwtIGJlLmFjdG9y LAoJCWtsYXNz
IDwtIGJlLmtsYXNzLAoJCW1lc3NhZ2UgPC0gYmUubWVzc2FnZQoJKQp9Cgpy dWxlIGNvcHlf
U3ViRGlhZ3JhbSBleHRlbmRzIGNvcHlfQmVoYXZpb3VyRWxlbWVudCB7Cglm cm9tIGJlIDog
bWV0YSFTdWJEaWFncmFtCgl0byBiZTEgOiBtZXRhIVN1YkRpYWdyYW0oCgkJ a2luZCA8LSBi
ZS5raW5kLAoJCWlubmVyIDwtIGJlLmlubmVyLAoJCS0tIG91dGVyIGNvcGll ZCBieSBzZWxm
IChjb250YWluZWQpCgkJbWVzc2FnZSA8LSBiZS5tZXNzYWdlCgkpCn0KCnJ1 bGUgY29weV9N
ZXNzYWdlIGV4dGVuZHMgY29weV9CZWhhdmlvdXJFbGVtZW50IHsKCWZyb20g YmUgOiBtZXRh
IU1lc3NhZ2UKCXRvIGJlMSA6IG1ldGEhTWVzc2FnZSgKCQlkZWFkbGluZSA8 LSBiZS5kZWFk
bGluZSwKCQl0eXBlIDwtIGJlLnR5cGUsCgkJdG9TZWxmIDwtIGJlLnRvU2Vs ZiwKCQlmcm9t
QWJzZW50IDwtIGJlLmZyb21BYnNlbnQsCgkJY2xhc3NpbnN0YW5jZSA8LSBi ZS5jbGFzc2lu
c3RhbmNlCgkJLS0gc3ViZGlhZ3JhbSBjb3BpZWQgYnkgY29weV9TdWJEaWFn cmFtIChjb250
YWluZWQpCgkpCn0KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSBEZXBsb3lt
ZW50IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmFic3Ry YWN0IHJ1bGUg
Y29weV9EZXBsb3ltZW50RWxlbWVudCB7Cglmcm9tIGRlIDogbWV0YSFEZXBs b3ltZW50RWxl
bWVudAoJdG8gZGUxIDogbWV0YSFEZXBsb3ltZW50RWxlbWVudCgKCQlpZCA8 LSBkZS5pZCwK
CQlmYWlsdXJlUmF0ZSA8LSBkZS5mYWlsdXJlUmF0ZQoJCS0tIGRlTW9kZWwg Y29waWVkIGJ5
IGNvcHlfTWV0YU1vZGVsIChjb250YWluZWQpCgkpCn0KCmFic3RyYWN0IHJ1 bGUgY29weV9E
ZXBsb3ltZW50Q29ubmVjdGlvbiBleHRlbmRzIGNvcHlfRGVwbG95bWVudEVs ZW1lbnQgewoJ
ZnJvbSBkZSA6IG1ldGEhRGVwbG95bWVudENvbm5lY3Rpb24KCXRvIGRlMSA6 IG1ldGEhRGVw
bG95bWVudENvbm5lY3Rpb24oCgkJbGFiZWwgPC0gZGUubGFiZWwsCgkJZHN0 IDwtIGRlLmRz
dCwKCQlzcmMgPC0gZGUuc3JjCgkpCn0KCnJ1bGUgY29weV9EZXBsb3ltZW50 RGVwZW5kZW5j
eSBleHRlbmRzIGNvcHlfRGVwbG95bWVudENvbm5lY3Rpb24gewoJZnJvbSBk ZSA6IG1ldGEh
RGVwbG95bWVudERlcGVuZGVuY3kKCXRvIGRlMSA6IG1ldGEhRGVwbG95bWVu dERlcGVuZGVu
Y3kKfQoKcnVsZSBjb3B5X0NvbW11bmljYXRpb25MaW5lIGV4dGVuZHMgY29w eV9EZXBsb3lt
ZW50Q29ubmVjdGlvbiB7Cglmcm9tIGRlIDogbWV0YSFDb21tdW5pY2F0aW9u TGluZQoJdG8g
ZGUxIDogbWV0YSFDb21tdW5pY2F0aW9uTGluZSgKCQliYW5kd2lkdGggPC0g ZGUuYmFuZHdp
ZHRoCgkpCn0KCmFic3RyYWN0IHJ1bGUgY29weV9EZXBsb3ltZW50Tm9kZSBl eHRlbmRzIGNv
cHlfRGVwbG95bWVudEVsZW1lbnQgewoJZnJvbSBkZSA6IG1ldGEhRGVwbG95 bWVudE5vZGUK
CXRvIGRlMSA6IG1ldGEhRGVwbG95bWVudE5vZGUoCgkJbmFtZSA8LSBkZS5u YW1lLAoJCXBh
dHRlcm5hYmxlIDwtIGRlLnBhdHRlcm5hYmxlLAoJCW91dGdvaW5nIDwtIGRl Lm91dGdvaW5n
LAoJCWluZ29pbmcgPC0gZGUuaW5nb2luZwoJKQp9CgpydWxlIGNvcHlfRGV2 aWNlTm9kZSBl
eHRlbmRzIGNvcHlfRGVwbG95bWVudE5vZGUgewoJZnJvbSBkZSA6IG1ldGEh RGV2aWNlTm9k
ZQoJdG8gZGUxIDogbWV0YSFEZXZpY2VOb2RlKAoJCWNvbXBvbmVudCA8LSBk ZS5jb21wb25l
bnQsCgkJaW5uZXIgPC0gZGUuaW5uZXIKCQktLSBvdXRlciBjb3BpZWQgYnkg c2VsZiAoY29u
dGFpbmVkKQoJKQp9CgpydWxlIGNvcHlfUHJvY2Vzc29yTm9kZSBleHRlbmRz IGNvcHlfRGV2
aWNlTm9kZSB7Cglmcm9tIGRlIDogbWV0YSFQcm9jZXNzb3JOb2RlCgl0byBk ZTEgOiBtZXRh
IVByb2Nlc3Nvck5vZGUoCgkJZnJlcXVlbmN5IDwtIGRlLmZyZXF1ZW5jeQoJ KQp9CgpydWxl
IGNvcHlfTWVtb3J5Tm9kZSBleHRlbmRzIGNvcHlfRGV2aWNlTm9kZSB7Cglm cm9tIGRlIDog
bWV0YSFNZW1vcnlOb2RlCgl0byBkZTEgOiBtZXRhIU1lbW9yeU5vZGUoCgkJ c2l6ZSA8LSBk
ZS5zaXplCgkpCn0KCnJ1bGUgY29weV9Qcm9ncmFtTm9kZSBleHRlbmRzIGNv cHlfRGV2aWNl
Tm9kZSB7Cglmcm9tIGRlIDogbWV0YSFQcm9ncmFtTm9kZQoJdG8gZGUxIDog bWV0YSFQcm9n
cmFtTm9kZSgKCQlzYW1wbGVSYXRlIDwtIGRlLnNhbXBsZVJhdGUKCSkKfQoK cnVsZSBjb3B5
X0NvbXBvbmVudCBleHRlbmRzIGNvcHlfRGVwbG95bWVudE5vZGUgewoJZnJv bSBkZSA6IG1l
dGEhQ29tcG9uZW50Cgl0byBkZTEgOiBtZXRhIUNvbXBvbmVudCgKCQl1c2Vz RW5jcnlwdGlv
biA8LSBkZS51c2VzRW5jcnlwdGlvbgoJCS0tIGRldmljZW5vZGUgY29waWVk IGJ5IGNvcHlf
RGV2aWNlTm9kZSAoY29udGFpbmVkKQoJKQp9CgotLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
LS0tLS0tLSBTY2VuYXJpbyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0t
CgpydWxlIGNvcHlfU2NlbmFyaW9FbGVtZW50IHsKCWZyb20gc2UgOiBtZXRh IVNjZW5hcmlv
RWxlbWVudAoJdG8gc2UxIDogbWV0YSFTY2VuYXJpb0VsZW1lbnQoCgkJTmFt ZSA8LSBzZS5O
YW1lLAoJCWlkIDwtIHNlLmlkLAoJCWhlaWdodCA8LSBzZS5oZWlnaHQsCgkJ d2lkdGggPC0g
c2Uud2lkdGgsCgkJeCA8LSBzZS54LAoJCXkgPC0gc2UueQoJCS0tIHNjTW9k ZWwgY29waWVk
IGJ5IGNvcHlfTWV0YU1vZGVsIChjb250YWluZWQpCgkpCn0KCnJ1bGUgY29w eV9TY2VuYXJp
byBleHRlbmRzIGNvcHlfU2NlbmFyaW9FbGVtZW50IHsKCWZyb20gc2UgOiBt ZXRhIVNjZW5h
cmlvCgl0byBzZTEgOiBtZXRhIVNjZW5hcmlvKAoJCXRyaWdnZXJzIDwtIHNl LnRyaWdnZXJz
LAoJCXRyaWdnZXJMaW5rcyA8LSBzZS50cmlnZ2VyTGlua3MsCgkJbm9kZXMg PC0gc2Uubm9k
ZXMsCgkJZWRnZXMgPC0gc2UuZWRnZXMKCSkKfQoKcnVsZSBjb3B5X1BvcnQg ZXh0ZW5kcyBj
b3B5X1NjZW5hcmlvRWxlbWVudCB7Cglmcm9tIHNlIDogbWV0YSFQb3J0Cgl0 byBzZTEgOiBt
ZXRhIVBvcnQoCgkJdHlwZSA8LSBzZS50eXBlCgkpCn0KCnJ1bGUgY29weV9T Y2VuYXJpb05v
ZGUgZXh0ZW5kcyBjb3B5X1NjZW5hcmlvRWxlbWVudCB7Cglmcm9tIHNlIDog bWV0YSFTY2Vu
YXJpb05vZGUKCXRvIHNlMSA6IG1ldGEhU2NlbmFyaW9Ob2RlKAoJCWlzU3Rh cnQgPC0gc2Uu
aXNTdGFydCwKCQlpc0ZpbmlzaCA8LSBzZS5pc0ZpbmlzaCwKCQljb21wUmVm IDwtIHNlLmNv
bXBSZWYsCgkJaXNCdWZmZXIgPC0gc2UuaXNCdWZmZXIsCgkJYnVmZmVyU2l6 ZUtCeXRlIDwt
IHNlLmJ1ZmZlclNpemVLQnl0ZSwKCQktLSBub2RlcyBjb3BpZWQgYnkgY29w eV9TY2VuYXJp
byAoY29udGFpbmVkKQoJCWlucHV0cyA8LSBzZS5pbnB1dHMsCgkJb3V0cHV0 cyA8LSBzZS5v
dXRwdXRzCgkpCn0KCnJ1bGUgY29weV9PcGVyYXRpb24gZXh0ZW5kcyBjb3B5 X1NjZW5hcmlv
RWxlbWVudCB7Cglmcm9tIHNlIDogbWV0YSFPcGVyYXRpb24KCXRvIHNlMSA6 IG1ldGEhT3Bl
cmF0aW9uKAoJCXRyaWdnZXJMaW5rcyA8LSBzZS50cmlnZ2VyTGlua3MKCQkt LSBwcm92aWRl
c1BvcnQgY29waWVkIGJ5IGNvcHlfUHJvdmlkZXNQb3J0IChjb250YWluZWQp CgkpCn0KCnJ1
bGUgY29weV9FZGdlIGV4dGVuZHMgY29weV9TY2VuYXJpb0VsZW1lbnQgewoJ ZnJvbSBzZSA6
IG1ldGEhRWRnZQoJdG8gc2UxIDogbWV0YSFFZGdlKAoJCS0tIHNjZW5hcmlv IGNvcGllZCBi
eSBjb3B5X1NjZW5hcmlvIChjb250YWluZWQpCgkJdGFyZ2V0IDwtIHNlLnRh cmdldCwKCQlz
b3VyY2UgPC0gc2Uuc291cmNlCgkpCn0KCnJ1bGUgY29weV9UcmlnZ2VyTGlu ayBleHRlbmRz
IGNvcHlfU2NlbmFyaW9FbGVtZW50IHsKCWZyb20gc2UgOiBtZXRhIVRyaWdn ZXJMaW5rCgl0
byBzZTEgOiBtZXRhIVRyaWdnZXJMaW5rKAoJCS0tIHNjZW5hcmlvIGNvcGll ZCBieSBjb3B5
X1NjZW5hcmlvIChjb250YWluZWQpCgkJdHJpZ2dlclNvdXJjZSA8LSBzZS50 cmlnZ2VyU291
cmNlLAoJCXRyaWdnZXJUYXJnZXQgPC0gc2UudHJpZ2dlclRhcmdldAoJKQp9 CgpydWxlIGNv
cHlfVHJpZ2dlciBleHRlbmRzIGNvcHlfU2NlbmFyaW9FbGVtZW50IHsKCWZy b20gc2UgOiBt
ZXRhIVRyaWdnZXIKCXRvIHNlMSA6IG1ldGEhVHJpZ2dlcigKCQlwZXJpb2Rp YyA8LSBzZS5w
ZXJpb2RpYywKCQlqaXR0ZXIgPC0gc2Uuaml0dGVyLAoJCW9mZnNldCA8LSBz ZS5vZmZzZXQs
CgkJZGVhZGxpbmUgPC0gc2UuZGVhZGxpbmUsCgkJcGVyaW9kIDwtIHNlLnBl cmlvZCwKCQlt
aW5BcnJpdmFsSW50ZXJ2YWwgPC0gc2UubWluQXJyaXZhbEludGVydmFsLAoJ CXByZWNlZGVk
QnlUYXNrIDwtIHNlLnByZWNlZGVkQnlUYXNrLAoJCXByaW9yaXR5IDwtIHNl LnByaW9yaXR5
LAoJCS0tIHNjZW5hcmlvIGNvcGllZCBieSBjb3B5X1NjZW5hcmlvIChjb250 YWluZWQpCgkJ
dHJpZ2dlckxpbmtzIDwtIHNlLnRyaWdnZXJMaW5rcwoJKQp9CgpydWxlIGNv cHlfUHJvdmlk
ZXNQb3J0IGV4dGVuZHMgY29weV9Qb3J0IHsKCWZyb20gc2UgOiBtZXRhIVBy b3ZpZGVzUG9y
dAoJdG8gc2UxIDptZXRhIVByb3ZpZGVzUG9ydCgKCQktLSBub2RlIGNvcGll ZCBieSBjb3B5
X1NjZW5hcmlvTm9kZSAoY29udGFpbmVkKQoJCWVkZ2VzIDwtIHNlLmVkZ2Vz LAoJCW9wZXJh
dGlvbnMgPC0gc2Uub3BlcmF0aW9ucwoJKQp9CgpydWxlIGNvcHlfUmVxdWly ZXNQb3J0IGV4
dGVuZHMgY29weV9Qb3J0IHsKCWZyb20gc2UgOiBtZXRhIVJlcXVpcmVzUG9y dAoJdG8gc2Ux
IDogbWV0YSFSZXF1aXJlc1BvcnQoCgkJLS0gbm9kZSBjb3BpZWQgYnkgY29w eV9TY2VuYXJp
b05vZGUgKGNvbnRhaW5lZCkKCQllZGdlcyA8LSBzZS5lZGdlcwoJKQp9Cgpy dWxlIGNvcHlf
U2VydmljZUluc3RhbmNlIGV4dGVuZHMgY29weV9TY2VuYXJpb05vZGUgewoJ ZnJvbSBzZSA6
IG1ldGEhU2VydmljZUluc3RhbmNlCgl0byBzZTEgOiBtZXRhIVNlcnZpY2VJ bnN0YW5jZQp9
CgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFN0cnVjdHVy YWwgLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgphYnN0cmFjdCBydWxlIGNv cHlfU3RydWN0
dXJhbEVsZW1lbnQgewoJZnJvbSBzZSA6IG1ldGEhU3RydWN0dXJhbEVsZW1l bnQKCXRvIHNl
MSA6IG1ldGEhU3RydWN0dXJhbEVsZW1lbnQoCgkJaWQgPC0gc2UuaWQKCQkt LSBzdE1vZGVs
IGNvcGllZCBieSBjb3B5X01ldGFNb2RlbCAoY29udGFpbmVkKQoJKQkKfQoK YWJzdHJhY3Qg
cnVsZSBjb3B5X1N0cnVjdHVyYWxDb25uZWN0aW9uIGV4dGVuZHMgY29weV9T dHJ1Y3R1cmFs
RWxlbWVudCB7Cglmcm9tIHNlIDogbWV0YSFTdHJ1Y3R1cmFsQ29ubmVjdGlv bgoJdG8gc2Ux
IDogbWV0YSFTdHJ1Y3R1cmFsQ29ubmVjdGlvbigKCQlzcmMgPC0gc2Uuc3Jj LAoJCWRzdCA8
LSBzZS5kc3QKCSkKfQoKYWJzdHJhY3QgcnVsZSBjb3B5X1NpbXBsZUNvbm5l Y3Rpb24gZXh0
ZW5kcyBjb3B5X1N0cnVjdHVyYWxDb25uZWN0aW9uIHsKCWZyb20gc2UgOiBt ZXRhIVNpbXBs
ZUNvbm5lY3Rpb24KCXRvIHNlMSA6IG1ldGEhU2ltcGxlQ29ubmVjdGlvbgp9 CgpydWxlIGNv
cHlfU3RydWN0dXJhbERlcGVuZGVuY3kgZXh0ZW5kcyBjb3B5X1NpbXBsZUNv bm5lY3Rpb24g
ewoJZnJvbSBzZSA6IG1ldGEhU3RydWN0dXJhbERlcGVuZGVuY3kKCXRvIHNl MSA6IG1ldGEh
U3RydWN0dXJhbERlcGVuZGVuY3kKfQoKcnVsZSBjb3B5X0dlbmVyYWxpemF0 aW9uIGV4dGVu
ZHMgY29weV9TaW1wbGVDb25uZWN0aW9uIHsKCWZyb20gc2UgOiBtZXRhIUdl bmVyYWxpemF0
aW9uCgl0byBzZTEgOiBtZXRhIUdlbmVyYWxpemF0aW9uCn0KCnJ1bGUgY29w eV9Bc3NvY2lh
dGlvbiBleHRlbmRzIGNvcHlfU3RydWN0dXJhbENvbm5lY3Rpb24gewoJZnJv bSBzZSA6IG1l
dGEhQXNzb2NpYXRpb24KCXRvIHNlMSA6IG1ldGEhQXNzb2NpYXRpb24oCgkJ YXNzb2NpYXRp
b25lbmQgPC0gc2UuYXNzb2NpYXRpb25lbmQKCSkKfQoKYWJzdHJhY3QgcnVs ZSBjb3B5X1N0
cnVjdHVyYWxOb2RlIGV4dGVuZHMgY29weV9TdHJ1Y3R1cmFsRWxlbWVudCB7 Cglmcm9tIHNl
IDogbWV0YSFTdHJ1Y3R1cmFsTm9kZQoJdG8gc2UxIDogbWV0YSFTdHJ1Y3R1 cmFsTm9kZSgK
CQluYW1lIDwtIHNlLm5hbWUsCgkJc3RlcmVvdHlwZSA8LSBzZS5zdGVyZW90 eXBlLAoJCW91
dGdvaW5nIDwtIHNlLm91dGdvaW5nLAoJCWluZ29pbmcgPC0gc2UuaW5nb2lu ZwoJKQp9Cgpy
dWxlIGNvcHlfQ2xhc3MgZXh0ZW5kcyBjb3B5X1N0cnVjdHVyYWxOb2RlewoJ ZnJvbSBzZSA6
IG1ldGEhQ2xhc3MKCXRvIHNlMSA6IG1ldGEhQ2xhc3MoCgkJQWJzdHJhY3Qg PC0gc2UuQWJz
dHJhY3QsCgkJYXR0cmliIDwtIHNlLmF0dHJpYiwKCQltZXRob2QgPC0gc2Uu bWV0aG9kLAoJ
CS0tIHBrZyBjb3BpZWQgYnkgY29weV9QYWNrYWdlIChjb250YWluZWQpCgkJ YXNzb2NpYXRp
b25lbmQgPC0gc2UuYXNzb2NpYXRpb25lbmQKCSkKfQoKcnVsZSBjb3B5X0F0 dHJpYnV0ZSBl
eHRlbmRzIGNvcHlfU3RydWN0dXJhbEVsZW1lbnQgewoJZnJvbSBzZSA6IG1l dGEhQXR0cmli
dXRlCgl0byBzZTEgOiBtZXRhIUF0dHJpYnV0ZSgKCQluYW1lIDwtIHNlLm5h bWUKCQktLSBr
bGFzcyBjb3BpZWQgYnkgY29weV9DbGFzcyAoY29udGFpbmVkKQoJKQp9Cgpy dWxlIGNvcHlf
TWV0aG9kIGV4dGVuZHMgY29weV9TdHJ1Y3R1cmFsRWxlbWVudCB7Cglmcm9t IHNlIDogbWV0
YSFNZXRob2QKCXRvIHNlMSA6IG1ldGEhTWV0aG9kKAoJCW5hbWUgPC0gc2Uu bmFtZQoJCS0t
IGtsYXNzIGNvcGllZCBieSBjb3B5X0NsYXNzIChjb250YWluZWQpCgkpCn0K CnJ1bGUgY29w
eV9QYWNrYWdlIGV4dGVuZHMgY29weV9TdHJ1Y3R1cmFsTm9kZSB7Cglmcm9t IHNlIDogbWV0
YSFQYWNrYWdlCgl0byBzZTEgOiBtZXRhIVBhY2thZ2UoCgkJaW5uZXIgPC0g c2UuaW5uZXIs
CgkJLS0gb3V0ZXIgY29waWVkIGJ5IHNlbGYgKGNvbnRhaW5lZCkKCQlrbGFz cyA8LSBzZS5r
bGFzcwoJKQp9CgpydWxlIGNvcHlfQXNzb2NpYXRpb25FbmQgZXh0ZW5kcyBj b3B5X1N0cnVj
dHVyYWxOb2RlIHsKCWZyb20gc2UgOiBtZXRhIUFzc29jaWF0aW9uRW5kCgl0 byBzZTEgOiBt
ZXRhIUFzc29jaWF0aW9uRW5kKAoJCXRyYW5zaWVudCA8LSBzZS50cmFuc2ll bnQsCgkJdm9s
YXRpbGUgPC0gc2Uudm9sYXRpbGUsCgkJY2hhbmdlYWJsZSA8LSBzZS5jaGFu Z2VhYmxlLAoJ
CWxvd2VyQm91bmQgPC0gc2UubG93ZXJCb3VuZCwKCQluYXZpZ2FibGUgPC0g c2UubmF2aWdh
YmxlLAoJCXR5cGUgPC0gc2UudHlwZSwKCQl1cHBlckJvdW5kIDwtIHNlLnVw cGVyQm91bmQs
CgkJYXNzb2NpYXRpb24gPC0gc2UuYXNzb2NpYXRpb24KCQktLSBrbGFzcyBj b3BpZWQgYnkg
Y29weV9DbGFzcyAoY29udGFpbmVkKQoJKQp9
--------------020206070800060801080301--
|
|
|
Re: [ATL] "OclUndefined has no property" when compiling ATL [message #59413 is a reply to message #59310] |
Fri, 24 August 2007 15:27 ![Go to previous message Go to previous message](theme/Solstice/images/up.png) ![Go to next message Go to next message](theme/Solstice/images/down.png) |
Frédéric Jouault![Friend of Eclipse Friend](/donate/web-api/friends_decorator.php?email=frederic.jouault%40univ-nantes.fr) Messages: 572 Registered: July 2009 |
Senior Member |
|
|
Hi,
Your problem seems to be that you do not use rule inheritance correctly.
The source pattern of the subrule must have the same structure (same
number of elements, same variable names).
See the following page for more information:
http://wiki.eclipse.org/index.php/ATL_Language_Troubleshoote r#Rule_inheritance
Regards,
Frédéric Jouault
Rene Ladan wrote:
> Hi,
>
> for some ATL files I get the following kind of error when compiling
> them. I'm using atl2006 with ATL 2.0RC2 (CVS, updated 2007-08-24).
> Unfortunately, the line numbers mentioned are of the not-yet-existent
> asm file.
>
> I've attached the ATL and the km3 files.
>
> Does anyone know how to solve this?
>
> Thanks,
> Rene
>
> SEVERE: ****** BEGIN Stack Trace
> SEVERE: message: ERROR: OclUndefined has no property
> SEVERE: A.main(1 : S) : ??#25 null
> SEVERE: local variables = {WriteTo='C:/Documents and
> Settings/rladan/workspace/trans2/sc_add_repository.asm',
> self=ATLCompiler : ASMModule}
> SEVERE: local stack = []
> SEVERE: MATL!Module;.process() : ??#794 159:3-159:24
> SEVERE: local variables = {null=temp!copy_AssociationEnd,
> null=Sequence {temp!add_repository, temp!add_Edge, temp!copy_MetaModel,
> temp!copy_BehaviourElement, temp!copy_ClassInstance,
> temp!copy_SubDiagram, temp!copy_Message, temp!copy_DeploymentElement,
> temp!copy_DeploymentConnection, temp!copy_DeploymentDependency,
> temp!copy_CommunicationLine, temp!copy_DeploymentNode,
> temp!copy_DeviceNode, temp!copy_ProcessorNode, temp!copy_MemoryNode,
> temp!copy_ProgramNode, temp!copy_Component, temp!copy_ScenarioElement,
> temp!copy_Scenario, temp!copy_Port, temp!copy_ScenarioNode,
> temp!copy_Operation, temp!copy_Edge, temp!copy_TriggerLink,
> temp!copy_Trigger, temp!copy_ProvidesPort, temp!copy_RequiresPort,
> temp!copy_ServiceInstance, temp!copy_StructuralElement,
> temp!copy_StructuralConnection, temp!copy_SimpleConnection,
> temp!copy_StructuralDependency, temp!copy_Generalization,
> temp!copy_Association, temp!copy_StructuralNode, temp!copy_Class,
> temp!copy_Attribute, temp!copy_Method, temp!copy_
> Package, temp!copy_AssociationEnd}, self=temp!sc_add_repository}
> SEVERE: local stack = []
> SEVERE: MATL!MatchedRule;.process() : ??#17 249:3-249:26
> SEVERE: local variables = {self=temp!add_repository}
> SEVERE: local stack = []
> SEVERE: MATL!MatchedRule;.process_apply() : ??#164 465:10-465:66
> SEVERE: local variables = {forEach=Sequence {temp!<unnamed>,
> temp!<unnamed>, temp!<unnamed>, temp!<unnamed>, temp!<unnamed>},
> ipe=temp!<unnamed>, forEach=Sequence {temp!<unnamed>},
> self=temp!add_repository, forEach=Sequence {}, ope=temp!<unnamed>}
> SEVERE: local stack = []
> SEVERE: MATL!SimpleOutPatternElement;.process_apply() : ??#28 528:3-528:29
> SEVERE: local variables = {self=temp!<unnamed>}
> SEVERE: local stack = []
> SEVERE: MATL!Binding;.process() : ??#20 535:3-535:21
> SEVERE: local variables = {self=temp!<unnamed>}
> SEVERE: local stack = []
> SEVERE: MATL!NavigationOrAttributeCallExp;.process() : ??#12 1036:3-1036:22
> SEVERE: local variables = {self=temp!isStart}
> SEVERE: local stack = []
> SEVERE: MATL!VariableExp;.process() : ??#90 1007:3-1007:49
> SEVERE: local variables = {self=temp!<unnamed>}
> SEVERE: local stack =
> [org.eclipse.m2m.atl.engine.vm.ASMEmitter@1ad7794, 'load']
> SEVERE: ****** END Stack Trace
> INFO: Execution terminated due to error (see launch configuration to
> allow continuation after errors).
> SEVERE: ERROR: OclUndefined has no property
> java.lang.RuntimeException: ERROR: OclUndefined has no property
> at
> org.eclipse.m2m.atl.engine.vm.SimpleDebugger.error(SimpleDeb ugger.java:185)
> at
> org.eclipse.m2m.atl.engine.vm.StackFrame.printStackTrace(Sta ckFrame.java:85)
>
> at
> org.eclipse.m2m.atl.engine.vm.StackFrame.printStackTrace(Sta ckFrame.java:81)
>
> at
> org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclUndefined.get( ASMOclUndefined.java:29)
>
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:288)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
> at
> org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
>
> at
> org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
>
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
> at
> org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
>
> at
> org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
>
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
> at
> org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
>
> at
> org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
>
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:325)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
> at
> org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
>
> at
> org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
>
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:325)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
> at
> org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
>
> at
> org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
>
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
> at
> org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
>
> at
> org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
>
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:325)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
> at
> org.eclipse.m2m.atl.engine.vm.nativelib.ASMOclAny.invoke(ASM OclAny.java:133)
>
> at
> org.eclipse.m2m.atl.drivers.emf4atl.ASMEMFModelElement.invok e(ASMEMFModelElement.java:661)
>
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.realExec(ASMOpera tion.java:230)
> at
> org.eclipse.m2m.atl.engine.vm.ASMOperation.exec(ASMOperation .java:161)
> at
> org.eclipse.m2m.atl.engine.vm.ASMInterpreter.<init>(ASMInterpreter.java:289)
>
> at org.eclipse.m2m.atl.engine.AtlLauncher.launch(AtlLauncher.ja va:161)
> at org.eclipse.m2m.atl.engine.AtlLauncher.launch(AtlLauncher.ja va:105)
> at org.eclipse.m2m.atl.engine.AtlLauncher.launch(AtlLauncher.ja va:81)
> at
> org.eclipse.m2m.atl.engine.AtlDefaultCompiler.internalCompil e(AtlDefaultCompiler.java:152)
>
> at
> org.eclipse.m2m.atl.engine.AtlDefaultCompiler.compileWithPro blemModel(AtlDefaultCompiler.java:49)
>
> at org.eclipse.m2m.atl.engine.AtlCompiler.compile(AtlCompiler.j ava:85)
> at
> org.eclipse.m2m.atl.adt.builder.AtlBuildVisitor.visit(AtlBui ldVisitor.java:76)
>
> at
> org.eclipse.core.internal.resources.Resource$2.visit(Resourc e.java:105)
> at
> org.eclipse.core.internal.resources.Resource$1.visitElement( Resource.java:57)
>
> at
> org.eclipse.core.internal.watson.ElementTreeIterator.doItera tion(ElementTreeIterator.java:81)
>
> at
> org.eclipse.core.internal.watson.ElementTreeIterator.doItera tion(ElementTreeIterator.java:85)
>
> at
> org.eclipse.core.internal.watson.ElementTreeIterator.iterate (ElementTreeIterator.java:126)
>
> at
> org.eclipse.core.internal.resources.Resource.accept(Resource .java:67)
> at
> org.eclipse.core.internal.resources.Resource.accept(Resource .java:103)
> at
> org.eclipse.core.internal.resources.Resource.accept(Resource .java:87)
> at
> org.eclipse.m2m.atl.adt.builder.AtlBuilder.fullBuild(AtlBuil der.java:48)
> at org.eclipse.m2m.atl.adt.builder.AtlBuilder$1.run(AtlBuilder. java:37)
> at
> org.eclipse.core.internal.resources.Workspace.run(Workspace. java:1797)
> at
> org.eclipse.core.internal.resources.Workspace.run(Workspace. java:1779)
> at org.eclipse.m2m.atl.adt.builder.AtlBuilder.run(AtlBuilder.ja va:59)
> at org.eclipse.m2m.atl.adt.builder.AtlBuilder.build(AtlBuilder. java:40)
> at
> org.eclipse.core.internal.events.BuildManager$2.run(BuildMan ager.java:624)
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> at
> org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:166)
>
> at
> org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:197)
>
> at
> org.eclipse.core.internal.events.BuildManager$1.run(BuildMan ager.java:246)
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> at
> org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:249)
>
> at
> org.eclipse.core.internal.events.BuildManager.basicBuildLoop (BuildManager.java:302)
>
> at
> org.eclipse.core.internal.events.BuildManager.build(BuildMan ager.java:334)
> at
> org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBu ildJob.java:137)
>
> at
> org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJ ob.java:235)
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
> SEVERE: Resource '/trans2/sc_add_repository.asm' does not exist.
> org.eclipse.core.internal.resources.ResourceException: Resource
> '/trans2/sc_add_repository.asm' does not exist.
> at
> org.eclipse.core.internal.resources.Resource.checkExists(Res ource.java:310)
> at
> org.eclipse.core.internal.resources.Resource.checkAccessible (Resource.java:193)
>
> at
> org.eclipse.core.internal.resources.Resource.setDerived(Reso urce.java:1478)
> at
> org.eclipse.m2m.atl.adt.builder.AtlBuildVisitor.visit(AtlBui ldVisitor.java:79)
>
> at
> org.eclipse.core.internal.resources.Resource$2.visit(Resourc e.java:105)
> at
> org.eclipse.core.internal.resources.Resource$1.visitElement( Resource.java:57)
>
> at
> org.eclipse.core.internal.watson.ElementTreeIterator.doItera tion(ElementTreeIterator.java:81)
>
> at
> org.eclipse.core.internal.watson.ElementTreeIterator.doItera tion(ElementTreeIterator.java:85)
>
> at
> org.eclipse.core.internal.watson.ElementTreeIterator.iterate (ElementTreeIterator.java:126)
>
> at
> org.eclipse.core.internal.resources.Resource.accept(Resource .java:67)
> at
> org.eclipse.core.internal.resources.Resource.accept(Resource .java:103)
> at
> org.eclipse.core.internal.resources.Resource.accept(Resource .java:87)
> at
> org.eclipse.m2m.atl.adt.builder.AtlBuilder.fullBuild(AtlBuil der.java:48)
> at org.eclipse.m2m.atl.adt.builder.AtlBuilder$1.run(AtlBuilder. java:37)
> at
> org.eclipse.core.internal.resources.Workspace.run(Workspace. java:1797)
> at
> org.eclipse.core.internal.resources.Workspace.run(Workspace. java:1779)
> at org.eclipse.m2m.atl.adt.builder.AtlBuilder.run(AtlBuilder.ja va:59)
> at org.eclipse.m2m.atl.adt.builder.AtlBuilder.build(AtlBuilder. java:40)
> at
> org.eclipse.core.internal.events.BuildManager$2.run(BuildMan ager.java:624)
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> at
> org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:166)
>
> at
> org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:197)
>
> at
> org.eclipse.core.internal.events.BuildManager$1.run(BuildMan ager.java:246)
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
> at
> org.eclipse.core.internal.events.BuildManager.basicBuild(Bui ldManager.java:249)
>
> at
> org.eclipse.core.internal.events.BuildManager.basicBuildLoop (BuildManager.java:302)
>
> at
> org.eclipse.core.internal.events.BuildManager.build(BuildMan ager.java:334)
> at
> org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBu ildJob.java:137)
>
> at
> org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJ ob.java:235)
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
>
>
|
|
|
Re: [ATL] "OclUndefined has no property" when compiling ATL [message #59512 is a reply to message #59413] |
Mon, 27 August 2007 08:16 ![Go to previous message Go to previous message](theme/Solstice/images/up.png) ![Go to next message Go to next message](theme/Solstice/images/down.png) |
Eclipse User![Friend of Eclipse Friend](/donate/web-api/friends_decorator.php?email=) |
|
|
|
Originally posted by: r.c.ladan.tue.nl
Frédéric Jouault wrote:
> Hi,
>
> Your problem seems to be that you do not use rule inheritance correctly.
>
> The source pattern of the subrule must have the same structure (same
> number of elements, same variable names).
>
Ok, I see.
The idea was to have a set of ATL files that has a set of base rules
(those below the ---MetaModel--- line) and to extend each file to form a
specific transformation.
An alternative would be to not let the rule add_repository extend the rule
copy_ServiceInstance, but then the two rules collide on their input pattern.
This would require unwrapping the latter rule up to copy_ScenarioElement and
duplicate the unwrapped rules for add_repository.
> See the following page for more information:
> http://wiki.eclipse.org/index.php/ATL_Language_Troubleshoote r#Rule_inheritance
>
It seems you're right.
>
> Regards,
>
> Frédéric Jouault
>
>
Regards,
Rene
> Rene Ladan wrote:
>> Hi,
>>
>> for some ATL files I get the following kind of error when compiling
>> them. I'm using atl2006 with ATL 2.0RC2 (CVS, updated 2007-08-24).
>> Unfortunately, the line numbers mentioned are of the not-yet-existent
>> asm file.
>>
>> I've attached the ATL and the km3 files.
>>
>> Does anyone know how to solve this?
>>
>> Thanks,
>> Rene
>>
|
|
|
Re: [ATL] "OclUndefined has no property" when compiling ATL [message #59584 is a reply to message #59413] |
Mon, 27 August 2007 10:47 ![Go to previous message Go to previous message](theme/Solstice/images/up.png) ![Go to next message Go to next message](theme/Solstice/images/down.png) |
Eclipse User![Friend of Eclipse Friend](/donate/web-api/friends_decorator.php?email=) |
|
|
|
Originally posted by: r.c.ladan.tue.nl
Frédéric Jouault wrote:
> Hi,
>
> Your problem seems to be that you do not use rule inheritance correctly.
>
> The source pattern of the subrule must have the same structure (same
> number of elements, same variable names).
>
[RFC] Would it be an idea to allow this (extending the source pattern) ?
I'm not really familiar with the source code, but I can have a quick look
tonight (i.e. in my free time, using ATL itself is not in my job description...)
> See the following page for more information:
> http://wiki.eclipse.org/index.php/ATL_Language_Troubleshoote r#Rule_inheritance
>
Regards,
Rene
>
> Rene Ladan wrote:
>> Hi,
>>
>> for some ATL files I get the following kind of error when compiling
>> them. I'm using atl2006 with ATL 2.0RC2 (CVS, updated 2007-08-24).
>> Unfortunately, the line numbers mentioned are of the not-yet-existent
>> asm file.
|
|
|
Re: [ATL] "OclUndefined has no property" when compiling ATL [message #59633 is a reply to message #59584] |
Tue, 28 August 2007 02:16 ![Go to previous message Go to previous message](theme/Solstice/images/up.png) |
Frédéric Jouault![Friend of Eclipse Friend](/donate/web-api/friends_decorator.php?email=frederic.jouault%40univ-nantes.fr) Messages: 572 Registered: July 2009 |
Senior Member |
|
|
Hi,
>> Your problem seems to be that you do not use rule inheritance correctly.
>>
>> The source pattern of the subrule must have the same structure (same
>> number of elements, same variable names).
>>
> [RFC] Would it be an idea to allow this (extending the source pattern) ?
>
> I'm not really familiar with the source code, but I can have a quick look
> tonight (i.e. in my free time, using ATL itself is not in my job
> description...)
With the current constraints on source patterns, a subrule matches a
subset of what its parent rule matches.
If a subrule could extend the source pattern with additional elements
(rather than only subclassing types, and adding an OCL constraint), it
would be able to match a totally different set (i.e., an element matched
by the subrule would not be matched by its parent rule), which is more
delicate.
That being said, exploring this possibility seems interesting ;-).
Regards,
Frédéric Jouault
|
|
|
Goto Forum:
Current Time: Wed Aug 28 02:13:54 GMT 2024
Powered by FUDForum. Page generated in 0.04009 seconds
|