Unreal build guide

Projectile Trajectory Indicator

A fixed pool of particles mapped onto ribbon trajectories from array data — NS_ProjectileTrajectory.

What this builds

C++ pushes N trajectories in as arrays; each particle becomes one point on a trajectory and the ribbon joins them up. The particles are a fixed pool that never dies, and any left over beyond the active trajectory count are folded to zero width instead.

Emitter stack

Stage order and module order were read off the shipped asset. TrajParams is the scratch pad module that holds the effect itself; everything else is an engine module.

NS_ProjectileTrajectoryRibbon Renderer · CPUSim · Fixed Bounds

  1. Emitter Update
  2. Emitter State
    • Life Cycle ModeSelf
    • Loop BehaviorInfinite
    • Loop Duration1.0
  3. Spawn Burst Instantaneousfixed pool
    • Spawn Time0.0
    • Spawn CountMaxTrajectoryCount × SegmentsPerTrajectory
  4. Particle Spawn
  5. Initialize Particle
    • Lifetime9999999
    • Color1, 1, 1, 1
  6. Particle Update
  7. Particle State
    • Kill Particles When Lifetime Has Elapsedtrue
    • LifetimeParticles.Lifetime
    • DeltaTimeEngine.DeltaTime
  8. TrajParamsscratch pad — graph below
    • LineArcRatio0.03
    • ShapeDataUser.TrajParams
    • PositionsUser.TrajStart
    • TimingUser.TrajTiming
    • ColorsUser.TrajColors
  9. Render
  10. Ribbon Renderer
    • Ribbon IdParticles.RibbonID
    • Link OrderParticles.RibbonLinkOrder
    • WidthParticles.RibbonWidth
    • MaterialMI_ProjectileTrajectory_Default
    • FacingScreen

TrajParams — the scratch pad module

Splits the particle index into a trajectory number and a position along it, then reads that trajectory's parameters out of the arrays to produce a position and a fill ratio. The real module reads five arrays the same way; only two are drawn below — the rest add one Get node each and change nothing about the shape.

Paste this into a Niagara script graph

This is the text Unreal itself writes when you copy nodes in a scratch pad. Select it and press Ctrl+C, then open a scratch pad module and press Ctrl+V — the nodes arrive with their wiring and layout intact.

Begin Object Class=/Script/NiagaraEditor.NiagaraClipboardContent Name="NiagaraClipboardContent_0" ExportPath="/Script/NiagaraEditor.NiagaraClipboardContent'/Engine/Transient.NiagaraClipboardContent_0'"
   ExportedNodes="QmVnaW4gT2JqZWN0IENsYXNzPS9TY3JpcHQvTmlhZ2FyYUVkaXRvci5OaWFnYXJhTm9kZUlucHV0IE5hbWU9Ik5pYWdhcmFOb2RlSW5wdXRfMCIgRXhwb3J0UGF0aD0iL1NjcmlwdC9OaWFnYXJhRWRpdG9yLk5pYWdhcmFOb2RlSW5wdXQnL0VuZ2luZS9UcmFuc2llbnQuVHJhalBhcmFtczpOaWFnYXJhU2NyaXB0U291cmNlXzAuTmlhZ2FyYUdyYXBoXzAuTmlhZ2FyYU5vZGVJbnB1dF8wJyINCiAgIElucHV0PShWYXJEYXRhPSgwKSxOYW1lPSJJbnB1dE1hcCIsVHlwZURlZkhhbmRsZT0oUmVnaXN0ZXJlZFR5cGVJbmRleD05NSkpDQogICBDYWxsU29ydFByaW9yaXR5PTENCiAgIENoYW5nZUlkPUY2MzlEMUNCNUM3MkUyQUIzNEM2MzE5MzEwMjhDQUMzDQogICBOb2RlUG9zWD0wDQogICBOb2RlUG9zWT0wDQogICBOb2RlR3VpZD1FQjM1NUJGRkIyRDlBRUFGM0JGQjNCQjM1RkVDQUJGMw0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPTAzNkE2QzY3MDExMTBERjEwRTk3NTYxQjZGNDc4MEM5LFBpbk5hbWU9IklucHV0IixEaXJlY3Rpb249IkVHUERfT3V0cHV0IixQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSIiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhUGFyYW1ldGVyTWFwJyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZVBhcmFtZXRlck1hcEdldF8xIDEyMUMwQ0M0MTI5NEE1QzgxREM3ODMyQzk5MTcxQzAwLE5pYWdhcmFOb2RlUGFyYW1ldGVyTWFwU2V0XzcgMkU2RTk5NTgyQUU1Q0QwQzcwMUU3Q0M4QTI3QkEwRDQsKSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCkVuZCBPYmplY3QNCkJlZ2luIE9iamVjdCBDbGFzcz0vU2NyaXB0L05pYWdhcmFFZGl0b3IuTmlhZ2FyYU5vZGVQYXJhbWV0ZXJNYXBHZXQgTmFtZT0iTmlhZ2FyYU5vZGVQYXJhbWV0ZXJNYXBHZXRfMSIgRXhwb3J0UGF0aD0iL1NjcmlwdC9OaWFnYXJhRWRpdG9yLk5pYWdhcmFOb2RlUGFyYW1ldGVyTWFwR2V0Jy9FbmdpbmUvVHJhbnNpZW50LlRyYWpQYXJhbXM6TmlhZ2FyYVNjcmlwdFNvdXJjZV8wLk5pYWdhcmFHcmFwaF8wLk5pYWdhcmFOb2RlUGFyYW1ldGVyTWFwR2V0XzEnIg0KICAgUGluT3V0cHV0VG9QaW5EZWZhdWx0UGVyc2lzdGVudElkPSgoNzEwRDhBMzJDMjczRkVGODg5QkM1Nzc2MTc1RTc5MDAsIEU2NTk2QjkzRDhCNDgwMDVGNDU0ODkyQjFGMEEzRjY5KSwoNjQ4ODQ1MTM5NTc5NjQxRjRGMTdDNUU3OEZFOTQwQkIsIDgwQ0I5OUZBMUVEMjkzMDIyQ0Q1NTRDMjM1QTlGNTRBKSwoMzc0OUUxQUNCOEUxMEE2RTkyNEFCRDhDODkxODY1OUEsIDk0RDE2OTM1NjAxQzhFMEJBREQzOEQzOTY2OEMwNDgzKSwoRDEwNDk5NDk5MTY3M0Y3NUM1QzZCQjg1RDU0QkFFQzEsIEIxNjM2NDQwNUQ3OUUyMzA0NThBRDkyODhGRURGMDkwKSwoMDBEMzZFNjQxQjQ5QUE3MkM4NjBFRTU4QThDMTA1MDIsIDdGNDRBQUNEN0YyMjdCQzdBMzc5M0Q0REZEMjYyNjBCKSwoMEY4QTgxNzlCQzk3RUE5MzkzQTU1MTYxM0Q3MEFFRDcsIDNFMTkwNTcwNzBFOUU2NkU4MzRENkVGQzc5NzUzODVFKSkNCiAgIENoYW5nZUlkPTc2N0I0QjE1MzQ5RjUwRDlFQ0M1MkMzNUFERkVBRkQ5DQogICBOb2RlUG9zWD0yODANCiAgIE5vZGVQb3NZPTANCiAgIE5vZGVHdWlkPTY5QTdCQ0ZEODUxQzMwNDkwNkNENjE2MTcwQkQxRjFEDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9MTIxQzBDQzQxMjk0QTVDODFEQzc4MzJDOTkxNzFDMDAsUGluTmFtZT0iU291cmNlIixQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSIiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhUGFyYW1ldGVyTWFwJyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZUlucHV0XzAgMDM2QTZDNjcwMTExMERGMTBFOTc1NjFCNkY0NzgwQzksKSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD0wQjBGMUUwOTczODU3Mzc5REY3OTkxMUQyMUUyRjVENSxQaW5OYW1lPSJQYXJ0aWNsZXMuSUQuSW5kZXgiLFBpbkZyaWVuZGx5TmFtZT1JTlZURVhUKCJQYXJ0aWNsZXMuSUQuSW5kZXgiKSxEaXJlY3Rpb249IkVHUERfT3V0cHV0IixQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSJQYXJhbWV0ZXJQaW4iLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhSW50MzInIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlT3BfMiA0NDA1MDFFRDYyMjBDNDE5ODA0ODhBNUQ5OEMzNDZFMSxOaWFnYXJhTm9kZUN1c3RvbUhsc2xfNiA5NjA0QjI1MkVDNjRBOUU0QThCRjgwODZCREJCN0JBNCwpLFBlcnNpc3RlbnRHdWlkPTcxMEQ4QTMyQzI3M0ZFRjg4OUJDNTc3NjE3NUU3OTAwLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPUE2NjA0N0E4RjVDNDIyQzAzMUU0NjQyMDZDRkQwRUU4LFBpblRvb2xUaXA9IkRlZmF1bHQgdmFsdWUgZm9yIFBhcnRpY2xlcy5JRC5JbmRleCBpZiBubyBvdGhlciBtb2R1bGUgaGFzIHNldCBpdCBwcmV2aW91c2x5IGluIHRoZSBzdGFjay4iLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IlBhcmFtZXRlclBpbiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFJbnQzMiciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxEZWZhdWx0VmFsdWU9IjAiLEF1dG9nZW5lcmF0ZWREZWZhdWx0VmFsdWU9IjAiLFBlcnNpc3RlbnRHdWlkPUU2NTk2QjkzRDhCNDgwMDVGNDU0ODkyQjFGMEEzRjY5LGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPTI2OEU3MUM4ODlFQzQyMUEwOEE3RkVBNDkwNzQxNzgyLFBpbk5hbWU9IkVuZ2luZS5UaW1lIixQaW5GcmllbmRseU5hbWU9SU5WVEVYVCgiRW5naW5lLlRpbWUiKSxEaXJlY3Rpb249IkVHUERfT3V0cHV0IixQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSJQYXJhbWV0ZXJQaW4iLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhRmxvYXQnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlQ3VzdG9tSGxzbF82IDNCQzhFRjhGNTNFRDExODNEQjkzMThGQkQ4QkFFODJGLCksUGVyc2lzdGVudEd1aWQ9NjQ4ODQ1MTM5NTc5NjQxRjRGMTdDNUU3OEZFOTQwQkIsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9QjdEMjY1MEU5Njg0Mzc1RTI0NzI0RDA2NEY5RTY2NTYsUGluVG9vbFRpcD0iRGVmYXVsdCB2YWx1ZSBmb3IgRW5naW5lLlRpbWUgaWYgbm8gb3RoZXIgbW9kdWxlIGhhcyBzZXQgaXQgcHJldmlvdXNseSBpbiB0aGUgc3RhY2suIixQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSJQYXJhbWV0ZXJQaW4iLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhRmxvYXQnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsRGVmYXVsdFZhbHVlPSIwLjAwMDAwMCIsQXV0b2dlbmVyYXRlZERlZmF1bHRWYWx1ZT0iMC4wMDAwMDAiLFBlcnNpc3RlbnRHdWlkPTgwQ0I5OUZBMUVEMjkzMDIyQ0Q1NTRDMjM1QTlGNTRBLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPTkyMjJGOUVCMTM4MjdFODdCRkEyOEE4QkJFNkM2NEQ3LFBpbk5hbWU9Ik1vZHVsZS5TZWdtZW50c1BlclRyYWplY3RvcnkiLFBpbkZyaWVuZGx5TmFtZT1JTlZURVhUKCJNb2R1bGUuU2VnbWVudHNQZXJUcmFqZWN0b3J5IiksRGlyZWN0aW9uPSJFR1BEX091dHB1dCIsUGluVHlwZS5QaW5DYXRlZ29yeT0iVHlwZSIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iUGFyYW1ldGVyUGluIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LlNjcmlwdFN0cnVjdCcvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYUludDMyJyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZU9wXzIgQjkxOTU5RDBBRjcxMzcyNDJDRjgwREUwN0U0RDRENkMsTmlhZ2FyYU5vZGVDdXN0b21IbHNsXzYgRTM5RDMyNUJEMUREODIzNTY1OUE0NTgzQzMxNDgyMDEsKSxQZXJzaXN0ZW50R3VpZD0zNzQ5RTFBQ0I4RTEwQTZFOTI0QUJEOEM4OTE4NjU5QSxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD1FMjk5NEE1NDMxNUY1NEFDOTVBQUNBNTRCMEMzNDJCQyxQaW5Ub29sVGlwPSJEZWZhdWx0IHZhbHVlIGZvciBNb2R1bGUuU2VnbWVudHNQZXJUcmFqZWN0b3J5IGlmIG5vIG90aGVyIG1vZHVsZSBoYXMgc2V0IGl0IHByZXZpb3VzbHkgaW4gdGhlIHN0YWNrLiIsUGluVHlwZS5QaW5DYXRlZ29yeT0iVHlwZSIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iUGFyYW1ldGVyUGluIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LlNjcmlwdFN0cnVjdCcvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYUludDMyJyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLERlZmF1bHRWYWx1ZT0iMCIsQXV0b2dlbmVyYXRlZERlZmF1bHRWYWx1ZT0iMCIsUGVyc2lzdGVudEd1aWQ9OTREMTY5MzU2MDFDOEUwQkFERDM4RDM5NjY4QzA0ODMsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9NDUzRkIxOUVCMjg4RjhFQzhGRERCMEUyRkRBQTY0M0MsUGluTmFtZT0iTW9kdWxlLkxpbmVBcmNSYXRpbyIsUGluRnJpZW5kbHlOYW1lPUlOVlRFWFQoIk1vZHVsZS5MaW5lQXJjUmF0aW8iKSxEaXJlY3Rpb249IkVHUERfT3V0cHV0IixQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSJQYXJhbWV0ZXJQaW4iLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhRmxvYXQnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlQ3VzdG9tSGxzbF82IDQyMDYyMzcxNzlBNDQyQTk5QjNFQTE5OTczMjhDMTI5LCksUGVyc2lzdGVudEd1aWQ9RDEwNDk5NDk5MTY3M0Y3NUM1QzZCQjg1RDU0QkFFQzEsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9MjVBMDY1NkEwNDUyMzdCQTU2QTNCNThBMzQwMzY2Q0EsUGluVG9vbFRpcD0iRGVmYXVsdCB2YWx1ZSBmb3IgTW9kdWxlLkxpbmVBcmNSYXRpbyBpZiBubyBvdGhlciBtb2R1bGUgaGFzIHNldCBpdCBwcmV2aW91c2x5IGluIHRoZSBzdGFjay4iLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IlBhcmFtZXRlclBpbiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFGbG9hdCciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxEZWZhdWx0VmFsdWU9IjAuMDAwMDAwIixBdXRvZ2VuZXJhdGVkRGVmYXVsdFZhbHVlPSIwLjAwMDAwMCIsUGVyc2lzdGVudEd1aWQ9QjE2MzY0NDA1RDc5RTIzMDQ1OEFEOTI4OEZFREYwOTAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9OTFENzk2ODM4NzUyNDg2RjE3MTBEMEU3QURBODY3RDMsUGluTmFtZT0iTW9kdWxlLlBvc2l0aW9ucyIsUGluRnJpZW5kbHlOYW1lPUlOVlRFWFQoIk1vZHVsZS5Qb3NpdGlvbnMiKSxEaXJlY3Rpb249IkVHUERfT3V0cHV0IixQaW5UeXBlLlBpbkNhdGVnb3J5PSJDbGFzcyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iUGFyYW1ldGVyUGluIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LkNsYXNzJy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhRGF0YUludGVyZmFjZUFycmF5RmxvYXQzJyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZUZ1bmN0aW9uQ2FsbF8zIDc5ODQxMDk4RDAwNTM2NDZGMDk1NzQ5NDc1MzYyNTdFLE5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsXzQgNDBFNDE0NzMwQTgyQjRDRDgwNDQ1RDVCODE0RUREQzksKSxQZXJzaXN0ZW50R3VpZD0wMEQzNkU2NDFCNDlBQTcyQzg2MEVFNThBOEMxMDUwMixiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD05MDVFQzE1MTBCMjE4QjIzRDkxRThBODUwN0UzM0VCMyxQaW5Ub29sVGlwPSJEZWZhdWx0IHZhbHVlIGZvciBNb2R1bGUuUG9zaXRpb25zIGlmIG5vIG90aGVyIG1vZHVsZSBoYXMgc2V0IGl0IHByZXZpb3VzbHkgaW4gdGhlIHN0YWNrLiIsUGluVHlwZS5QaW5DYXRlZ29yeT0iQ2xhc3MiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IlBhcmFtZXRlclBpbiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5DbGFzcycvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYURhdGFJbnRlcmZhY2VBcnJheUZsb2F0MyciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxQZXJzaXN0ZW50R3VpZD03RjQ0QUFDRDdGMjI3QkM3QTM3OTNENERGRDI2MjYwQixiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD1BQjM0REE5RTM2RUIxOTQ2NzgyNEZERUU3RDAxMkU1NixQaW5OYW1lPSJNb2R1bGUuU2hhcGVEYXRhIixQaW5GcmllbmRseU5hbWU9SU5WVEVYVCgiTW9kdWxlLlNoYXBlRGF0YSIpLERpcmVjdGlvbj0iRUdQRF9PdXRwdXQiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IkNsYXNzIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSJQYXJhbWV0ZXJQaW4iLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuQ2xhc3MnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFEYXRhSW50ZXJmYWNlQXJyYXlGbG9hdDQnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsXzUgMUE2MUY5MDIyMThGODlGQzgxNkQwNEUyQzJFMDAxNTgsKSxQZXJzaXN0ZW50R3VpZD0wRjhBODE3OUJDOTdFQTkzOTNBNTUxNjEzRDcwQUVENyxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD0yOUZDQUExRjgxOTc0MzNEM0I4MDlCNkJCNjBCOTAwNSxQaW5Ub29sVGlwPSJEZWZhdWx0IHZhbHVlIGZvciBNb2R1bGUuU2hhcGVEYXRhIGlmIG5vIG90aGVyIG1vZHVsZSBoYXMgc2V0IGl0IHByZXZpb3VzbHkgaW4gdGhlIHN0YWNrLiIsUGluVHlwZS5QaW5DYXRlZ29yeT0iQ2xhc3MiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IlBhcmFtZXRlclBpbiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5DbGFzcycvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYURhdGFJbnRlcmZhY2VBcnJheUZsb2F0NCciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxQZXJzaXN0ZW50R3VpZD0zRTE5MDU3MDcwRTlFNjZFODM0RDZFRkM3OTc1Mzg1RSxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD0xMEExM0IzMkU5NTIzNjA0RUFBNzlCNjI2MzM2MEFDMCxQaW5OYW1lPSJBZGQiLERpcmVjdGlvbj0iRUdQRF9PdXRwdXQiLFBpblR5cGUuUGluQ2F0ZWdvcnk9Ik1pc2MiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IkR5bmFtaWNBZGRQaW4iLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Tm9uZSxQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQpFbmQgT2JqZWN0DQpCZWdpbiBPYmplY3QgQ2xhc3M9L1NjcmlwdC9OaWFnYXJhRWRpdG9yLk5pYWdhcmFOb2RlT3AgTmFtZT0iTmlhZ2FyYU5vZGVPcF8yIiBFeHBvcnRQYXRoPSIvU2NyaXB0L05pYWdhcmFFZGl0b3IuTmlhZ2FyYU5vZGVPcCcvRW5naW5lL1RyYW5zaWVudC5UcmFqUGFyYW1zOk5pYWdhcmFTY3JpcHRTb3VyY2VfMC5OaWFnYXJhR3JhcGhfMC5OaWFnYXJhTm9kZU9wXzInIg0KICAgT3BOYW1lPSJOdW1lcmljOjpEaXYiDQogICBDaGFuZ2VJZD0xMDFCRjk0NDU1MEYzNzM2MzY2NUEzRDhEMEY0NzY4RQ0KICAgTm9kZVBvc1g9ODIwDQogICBOb2RlUG9zWT0wDQogICBOb2RlR3VpZD02Njk0NzI3MEEzRTRFQjk2MkEwNzY2NDhFQTRFNDVDMg0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPTQ0MDUwMUVENjIyMEM0MTk4MDQ4OEE1RDk4QzM0NkUxLFBpbk5hbWU9IkEiLFBpblRvb2xUaXA9IkEiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFOdW1lcmljJyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZVBhcmFtZXRlck1hcEdldF8xIDBCMEYxRTA5NzM4NTczNzlERjc5OTExRDIxRTJGNUQ1LCksUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9QjkxOTU5RDBBRjcxMzcyNDJDRjgwREUwN0U0RDRENkMsUGluTmFtZT0iQiIsUGluVG9vbFRpcD0iQiIsUGluVHlwZS5QaW5DYXRlZ29yeT0iVHlwZSIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LlNjcmlwdFN0cnVjdCcvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYU51bWVyaWMnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlUGFyYW1ldGVyTWFwR2V0XzEgOTIyMkY5RUIxMzgyN0U4N0JGQTI4QThCQkU2QzY0RDcsKSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD1GQjhFNTJCMTg2MzQ1MzBGOUJFQTEyRjU0RDVFMjVBRixQaW5OYW1lPSJSZXN1bHQiLFBpblRvb2xUaXA9IlJlc3VsdCIsRGlyZWN0aW9uPSJFR1BEX091dHB1dCIsUGluVHlwZS5QaW5DYXRlZ29yeT0iVHlwZSIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LlNjcmlwdFN0cnVjdCcvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYU51bWVyaWMnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsXzQgRjFFQ0U2RDE4NTJCQ0UxQjRDQjAzNDIxRUEzN0VCNEYsTmlhZ2FyYU5vZGVGdW5jdGlvbkNhbGxfNSA5OUVFNThGMDVGRTIzODZBNTRCNTAwNjg5NERENTcxRSxOaWFnYXJhTm9kZVBhcmFtZXRlck1hcFNldF83IDU2Nzg2RDVGMzVGNEFGRUJCNDMyMzgxMzk5NjIzN0U3LCksUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQpFbmQgT2JqZWN0DQpCZWdpbiBPYmplY3QgQ2xhc3M9L1NjcmlwdC9OaWFnYXJhRWRpdG9yLk5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsIE5hbWU9Ik5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsXzMiIEV4cG9ydFBhdGg9Ii9TY3JpcHQvTmlhZ2FyYUVkaXRvci5OaWFnYXJhTm9kZUZ1bmN0aW9uQ2FsbCcvRW5naW5lL1RyYW5zaWVudC5UcmFqUGFyYW1zOk5pYWdhcmFTY3JpcHRTb3VyY2VfMC5OaWFnYXJhR3JhcGhfMC5OaWFnYXJhTm9kZUZ1bmN0aW9uQ2FsbF8zJyINCiAgIFNpZ25hdHVyZT0oTmFtZT0iTGVuZ3RoIixJbnB1dHM9KChOYW1lPSJBcnJheSBpbnRlcmZhY2UiLFR5cGVEZWZIYW5kbGU9KFJlZ2lzdGVyZWRUeXBlSW5kZXg9NzEpKSksT3V0cHV0cz0oKE5hbWU9Ik51bSIsVHlwZURlZkhhbmRsZT0oUmVnaXN0ZXJlZFR5cGVJbmRleD0xMDEpKSksYk1lbWJlckZ1bmN0aW9uPVRydWUsRnVuY3Rpb25WZXJzaW9uPTEpDQogICBGdW5jdGlvbkRpc3BsYXlOYW1lPSJMZW5ndGgiDQogICBDaGFuZ2VJZD1FRENFQzg4NDlGRjY2Qzc0N0FCN0JBODgxQ0YzOUU3OA0KICAgTm9kZVBvc1g9ODIwDQogICBOb2RlUG9zWT0xOTANCiAgIE5vZGVHdWlkPTNBQjE1MEIwMzg2NUZGNDA1RUM0NzIzODZDOTY1MTE4DQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9Nzk4NDEwOThEMDA1MzY0NkYwOTU3NDk0NzUzNjI1N0UsUGluTmFtZT0iQXJyYXkgaW50ZXJmYWNlIixQaW5UeXBlLlBpbkNhdGVnb3J5PSJDbGFzcyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LkNsYXNzJy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhRGF0YUludGVyZmFjZUFycmF5RmxvYXQzJyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZVBhcmFtZXRlck1hcEdldF8xIDkxRDc5NjgzODc1MjQ4NkYxNzEwRDBFN0FEQTg2N0QzLCksUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9NzEzRUVBODJBQjMxNEVBNDlGODEwMjc2RUE1NDY1NjQsUGluTmFtZT0iTnVtIixEaXJlY3Rpb249IkVHUERfT3V0cHV0IixQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSIiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhSW50MzInIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlQ3VzdG9tSGxzbF82IDBGN0MzODIxRkQxQjdDRkYxODkzQjc3RDgwNjY2RUU3LCksUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1UcnVlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCkVuZCBPYmplY3QNCkJlZ2luIE9iamVjdCBDbGFzcz0vU2NyaXB0L05pYWdhcmFFZGl0b3IuTmlhZ2FyYU5vZGVGdW5jdGlvbkNhbGwgTmFtZT0iTmlhZ2FyYU5vZGVGdW5jdGlvbkNhbGxfNCIgRXhwb3J0UGF0aD0iL1NjcmlwdC9OaWFnYXJhRWRpdG9yLk5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsJy9FbmdpbmUvVHJhbnNpZW50LlRyYWpQYXJhbXM6TmlhZ2FyYVNjcmlwdFNvdXJjZV8wLk5pYWdhcmFHcmFwaF8wLk5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsXzQnIg0KICAgU2lnbmF0dXJlPShOYW1lPSJHZXQiLElucHV0cz0oKE5hbWU9IkFycmF5IGludGVyZmFjZSIsVHlwZURlZkhhbmRsZT0oUmVnaXN0ZXJlZFR5cGVJbmRleD03MSkpLChOYW1lPSJJbmRleCIsVHlwZURlZkhhbmRsZT0oUmVnaXN0ZXJlZFR5cGVJbmRleD0xMDEpKSksT3V0cHV0cz0oKE5hbWU9IlZhbHVlIixUeXBlRGVmSGFuZGxlPShSZWdpc3RlcmVkVHlwZUluZGV4PTEwNCkpKSxiTWVtYmVyRnVuY3Rpb249VHJ1ZSxGdW5jdGlvblZlcnNpb249MSkNCiAgIEZ1bmN0aW9uRGlzcGxheU5hbWU9IkdldCINCiAgIENoYW5nZUlkPTI5RDUwNTM5MzZEODc1QzFGOTUxMUZGNTAzMTlGRDM1DQogICBOb2RlUG9zWD04MjANCiAgIE5vZGVQb3NZPTMzMA0KICAgTm9kZUd1aWQ9ODNGNDdCNTlCMDg3QTk3MUQ1RkYwRjIxQkQ3MUExNDENCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD00MEU0MTQ3MzBBODJCNENEODA0NDVENUI4MTRFRERDOSxQaW5OYW1lPSJBcnJheSBpbnRlcmZhY2UiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IkNsYXNzIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSIiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuQ2xhc3MnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFEYXRhSW50ZXJmYWNlQXJyYXlGbG9hdDMnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlUGFyYW1ldGVyTWFwR2V0XzEgOTFENzk2ODM4NzUyNDg2RjE3MTBEMEU3QURBODY3RDMsKSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD1GMUVDRTZEMTg1MkJDRTFCNENCMDM0MjFFQTM3RUI0RixQaW5OYW1lPSJJbmRleCIsUGluVHlwZS5QaW5DYXRlZ29yeT0iVHlwZSIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LlNjcmlwdFN0cnVjdCcvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYUludDMyJyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZU9wXzIgRkI4RTUyQjE4NjM0NTMwRjlCRUExMkY1NEQ1RTI1QUYsKSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD0wMjQyRkFBNDFGNzZGRDNFNjY0NEExMDg5OTFEODg4NixQaW5OYW1lPSJWYWx1ZSIsRGlyZWN0aW9uPSJFR1BEX091dHB1dCIsUGluVHlwZS5QaW5DYXRlZ29yeT0iVHlwZSIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LlNjcmlwdFN0cnVjdCcvU2NyaXB0L0NvcmVVT2JqZWN0LlZlY3RvcjNmJyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZUN1c3RvbUhsc2xfNiBGRkU2MDdCQTE3Q0ZEN0M0MTBDQjkxNkFFNTE0NjNDOCwpLFBlcnNpc3RlbnRHdWlkPTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9VHJ1ZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQpFbmQgT2JqZWN0DQpCZWdpbiBPYmplY3QgQ2xhc3M9L1NjcmlwdC9OaWFnYXJhRWRpdG9yLk5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsIE5hbWU9Ik5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsXzUiIEV4cG9ydFBhdGg9Ii9TY3JpcHQvTmlhZ2FyYUVkaXRvci5OaWFnYXJhTm9kZUZ1bmN0aW9uQ2FsbCcvRW5naW5lL1RyYW5zaWVudC5UcmFqUGFyYW1zOk5pYWdhcmFTY3JpcHRTb3VyY2VfMC5OaWFnYXJhR3JhcGhfMC5OaWFnYXJhTm9kZUZ1bmN0aW9uQ2FsbF81JyINCiAgIFNpZ25hdHVyZT0oTmFtZT0iR2V0IixJbnB1dHM9KChOYW1lPSJBcnJheSBpbnRlcmZhY2UiLFR5cGVEZWZIYW5kbGU9KFJlZ2lzdGVyZWRUeXBlSW5kZXg9NzMpKSwoTmFtZT0iSW5kZXgiLFR5cGVEZWZIYW5kbGU9KFJlZ2lzdGVyZWRUeXBlSW5kZXg9MTAxKSkpLE91dHB1dHM9KChOYW1lPSJWYWx1ZSIsVHlwZURlZkhhbmRsZT0oUmVnaXN0ZXJlZFR5cGVJbmRleD0xMDUpKSksYk1lbWJlckZ1bmN0aW9uPVRydWUsRnVuY3Rpb25WZXJzaW9uPTEpDQogICBGdW5jdGlvbkRpc3BsYXlOYW1lPSJHZXQiDQogICBDaGFuZ2VJZD00OTVGNzJCNjdCMUM2RTJBM0UxOTMxQjZFMDk4Q0RCMg0KICAgTm9kZVBvc1g9ODIwDQogICBOb2RlUG9zWT01MDANCiAgIE5vZGVHdWlkPUU2OTE4MEU2M0U2MjgyMTIwOTlCNTVCQURCNEVCQzFFDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9MUE2MUY5MDIyMThGODlGQzgxNkQwNEUyQzJFMDAxNTgsUGluTmFtZT0iQXJyYXkgaW50ZXJmYWNlIixQaW5UeXBlLlBpbkNhdGVnb3J5PSJDbGFzcyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LkNsYXNzJy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhRGF0YUludGVyZmFjZUFycmF5RmxvYXQ0JyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZVBhcmFtZXRlck1hcEdldF8xIEFCMzREQTlFMzZFQjE5NDY3ODI0RkRFRTdEMDEyRTU2LCksUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9OTlFRTU4RjA1RkUyMzg2QTU0QjUwMDY4OTRERDU3MUUsUGluTmFtZT0iSW5kZXgiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFJbnQzMiciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxMaW5rZWRUbz0oTmlhZ2FyYU5vZGVPcF8yIEZCOEU1MkIxODYzNDUzMEY5QkVBMTJGNTRENUUyNUFGLCksUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9QUE5Q0E1RjlFNTRDNjg3QjIxRDJBNUFEOEI5MEEzQ0IsUGluTmFtZT0iVmFsdWUiLERpcmVjdGlvbj0iRUdQRF9PdXRwdXQiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9Db3JlVU9iamVjdC5WZWN0b3I0ZiciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxMaW5rZWRUbz0oTmlhZ2FyYU5vZGVDdXN0b21IbHNsXzYgQkRCNTI0RjI1OThENTg5OEM0NEY3MkJBMDFDMEU5QzQsKSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPVRydWUsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KRW5kIE9iamVjdA0KQmVnaW4gT2JqZWN0IENsYXNzPS9TY3JpcHQvTmlhZ2FyYUVkaXRvci5OaWFnYXJhTm9kZUN1c3RvbUhsc2wgTmFtZT0iTmlhZ2FyYU5vZGVDdXN0b21IbHNsXzYiIEV4cG9ydFBhdGg9Ii9TY3JpcHQvTmlhZ2FyYUVkaXRvci5OaWFnYXJhTm9kZUN1c3RvbUhsc2wnL0VuZ2luZS9UcmFuc2llbnQuVHJhalBhcmFtczpOaWFnYXJhU2NyaXB0U291cmNlXzAuTmlhZ2FyYUdyYXBoXzAuTmlhZ2FyYU5vZGVDdXN0b21IbHNsXzYnIg0KICAgQ3VzdG9tSGxzbD0iZmxvYXQgVCA9IChmbG9hdCkoSW5kZXggJSBLKSAvIChmbG9hdCkoSyAtIDEpO1xyXG5pbnQgdHJhaiA9IEluZGV4IC8gSztcclxuaWYgKHRyYWogPj0gQ291bnQpIHsgUG9zID0gU3RhcnQ7IEZpbGwgPSAwLjA7IFdpZHRoID0gMC4wOyByZXR1cm47IH0gIC8vIGNvbGxhcHNlIHRoZSBzcGFyZVxyXG5mbG9hdCB5YXcgPSByYWRpYW5zKFAudyk7XHJcbmZsb2F0MyBlbmRQdCA9IGZsb2F0MyhQLnksIFAueiwgU3RhcnQueik7ICAgLy8gQysrIHBhc3NlcyB0aGUgaW1wYWN0IFhZIGluIHRoZSBhcnJheVxyXG5mbG9hdDMgcG9zID0gbGVycChTdGFydCwgZW5kUHQsIFQpO1xyXG5mbG9hdCBhcmNIID0gKFAueCA+PSAwLjUpID8gUC56IDogKFAueSAqIExpbmVBcmNSYXRpbyk7ICAvLyBhIExpbmUgYXJjcyB0b28sIG9ubHkgZmFpbnRseVxyXG5wb3MueiArPSA0LjAgKiBhcmNIICogVCAqICgxLjAgLSBUKTtcclxuUG9zID0gcG9zO1xyXG5GaWxsID0gRW5naW5lVGltZTtcclxuV2lkdGggPSA4LjA7Ig0KICAgU2lnbmF0dXJlPShJbnB1dHM9KChOYW1lPSJJbmRleCIsVHlwZURlZkhhbmRsZT0oUmVnaXN0ZXJlZFR5cGVJbmRleD0xMDEpKSwoTmFtZT0iSyIsVHlwZURlZkhhbmRsZT0oUmVnaXN0ZXJlZFR5cGVJbmRleD0xMDEpKSwoTmFtZT0iRW5naW5lVGltZSIsVHlwZURlZkhhbmRsZT0oUmVnaXN0ZXJlZFR5cGVJbmRleD05OSkpLChOYW1lPSJMaW5lQXJjUmF0aW8iLFR5cGVEZWZIYW5kbGU9KFJlZ2lzdGVyZWRUeXBlSW5kZXg9OTkpKSwoTmFtZT0iQ291bnQiLFR5cGVEZWZIYW5kbGU9KFJlZ2lzdGVyZWRUeXBlSW5kZXg9MTAxKSksKE5hbWU9IlN0YXJ0IixUeXBlRGVmSGFuZGxlPShSZWdpc3RlcmVkVHlwZUluZGV4PTEwNCkpLChOYW1lPSJQIixUeXBlRGVmSGFuZGxlPShSZWdpc3RlcmVkVHlwZUluZGV4PTEwNSkpKSxPdXRwdXRzPSgoTmFtZT0iUG9zIixUeXBlRGVmSGFuZGxlPShSZWdpc3RlcmVkVHlwZUluZGV4PTEwNCkpLChOYW1lPSJGaWxsIixUeXBlRGVmSGFuZGxlPShSZWdpc3RlcmVkVHlwZUluZGV4PTk5KSksKE5hbWU9IldpZHRoIixUeXBlRGVmSGFuZGxlPShSZWdpc3RlcmVkVHlwZUluZGV4PTk5KSkpLE5hbWU9ImN1cnZlIikNCiAgIENoYW5nZUlkPTVEOEIyQzZDRUEyRUNFODAyNzAwMzJDMDg2RTY0OUE0DQogICBOb2RlUG9zWD0xNDAwDQogICBOb2RlUG9zWT0yMDANCiAgIE5vZGVHdWlkPTQ3MzlENTM4RDE3QjIzRjQ4RTU2OUEzMEExODM5RDBDDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9OTYwNEIyNTJFQzY0QTlFNEE4QkY4MDg2QkRCQjdCQTQsUGluTmFtZT0iSW5kZXgiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFJbnQzMiciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxMaW5rZWRUbz0oTmlhZ2FyYU5vZGVQYXJhbWV0ZXJNYXBHZXRfMSAwQjBGMUUwOTczODU3Mzc5REY3OTkxMUQyMUUyRjVENSwpLFBlcnNpc3RlbnRHdWlkPTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPUUzOUQzMjVCRDFERDgyMzU2NTlBNDU4M0MzMTQ4MjAxLFBpbk5hbWU9IksiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFJbnQzMiciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxMaW5rZWRUbz0oTmlhZ2FyYU5vZGVQYXJhbWV0ZXJNYXBHZXRfMSA5MjIyRjlFQjEzODI3RTg3QkZBMjhBOEJCRTZDNjRENywpLFBlcnNpc3RlbnRHdWlkPTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPTNCQzhFRjhGNTNFRDExODNEQjkzMThGQkQ4QkFFODJGLFBpbk5hbWU9IkVuZ2luZVRpbWUiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFGbG9hdCciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxMaW5rZWRUbz0oTmlhZ2FyYU5vZGVQYXJhbWV0ZXJNYXBHZXRfMSAyNjhFNzFDODg5RUM0MjFBMDhBN0ZFQTQ5MDc0MTc4MiwpLFBlcnNpc3RlbnRHdWlkPTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPTQyMDYyMzcxNzlBNDQyQTk5QjNFQTE5OTczMjhDMTI5LFBpbk5hbWU9IkxpbmVBcmNSYXRpbyIsUGluVHlwZS5QaW5DYXRlZ29yeT0iVHlwZSIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LlNjcmlwdFN0cnVjdCcvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYUZsb2F0JyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZVBhcmFtZXRlck1hcEdldF8xIDQ1M0ZCMTlFQjI4OEY4RUM4RkREQjBFMkZEQUE2NDNDLCksUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9MEY3QzM4MjFGRDFCN0NGRjE4OTNCNzdEODA2NjZFRTcsUGluTmFtZT0iQ291bnQiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFJbnQzMiciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxMaW5rZWRUbz0oTmlhZ2FyYU5vZGVGdW5jdGlvbkNhbGxfMyA3MTNFRUE4MkFCMzE0RUE0OUY4MTAyNzZFQTU0NjU2NCwpLFBlcnNpc3RlbnRHdWlkPTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPUZGRTYwN0JBMTdDRkQ3QzQxMENCOTE2QUU1MTQ2M0M4LFBpbk5hbWU9IlN0YXJ0IixQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSIiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvQ29yZVVPYmplY3QuVmVjdG9yM2YnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsXzQgMDI0MkZBQTQxRjc2RkQzRTY2NDRBMTA4OTkxRDg4ODYsKSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD1CREI1MjRGMjU5OEQ1ODk4QzQ0RjcyQkEwMUMwRTlDNCxQaW5OYW1lPSJQIixQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSIiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvQ29yZVVPYmplY3QuVmVjdG9yNGYnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlRnVuY3Rpb25DYWxsXzUgQUE5Q0E1RjlFNTRDNjg3QjIxRDJBNUFEOEI5MEEzQ0IsKSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD0wNTRGMTM1OEFDMDAwM0FFRkU4NjA4NENBOERENUQyNixQaW5OYW1lPSJQb3MiLERpcmVjdGlvbj0iRUdQRF9PdXRwdXQiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9Db3JlVU9iamVjdC5WZWN0b3IzZiciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD1FODc4RUQ5MTBEQjYzMjQ1MjE2RDVBQjEyNkI5Q0Q3NSxQaW5OYW1lPSJGaWxsIixEaXJlY3Rpb249IkVHUERfT3V0cHV0IixQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSIiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhRmxvYXQnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlUGFyYW1ldGVyTWFwU2V0XzcgREVBNkU5RDBGRTQzNjkzODgxOTc0QTRDQkM5MTU0RDQsKSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD1ENzY2N0IxRUI2MDNGMUQ0RDBBQzA0NEE5Mzk5RDhBQyxQaW5OYW1lPSJXaWR0aCIsRGlyZWN0aW9uPSJFR1BEX091dHB1dCIsUGluVHlwZS5QaW5DYXRlZ29yeT0iVHlwZSIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LlNjcmlwdFN0cnVjdCcvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYUZsb2F0JyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZVBhcmFtZXRlck1hcFNldF83IEVDRTM0MTc4NUU3QjcyNDZEQjUzQTM3Q0U0RDIxNkVFLCksUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9MEU4Q0Y2MDU5MjUzQkYxM0IwNkFCRTFEQzQ0RjZFNzcsUGluTmFtZT0iQWRkIixQaW5UeXBlLlBpbkNhdGVnb3J5PSJNaXNjIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSJEeW5hbWljQWRkUGluIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PU5vbmUsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLFBlcnNpc3RlbnRHdWlkPTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPTBFOENGNjA1OTI1M0JGMTNCMDZBQkUxREM0NEY2RTc3LFBpbk5hbWU9IkFkZCIsRGlyZWN0aW9uPSJFR1BEX091dHB1dCIsUGluVHlwZS5QaW5DYXRlZ29yeT0iTWlzYyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iRHluYW1pY0FkZFBpbiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD1Ob25lLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCkVuZCBPYmplY3QNCkJlZ2luIE9iamVjdCBDbGFzcz0vU2NyaXB0L05pYWdhcmFFZGl0b3IuTmlhZ2FyYU5vZGVQYXJhbWV0ZXJNYXBTZXQgTmFtZT0iTmlhZ2FyYU5vZGVQYXJhbWV0ZXJNYXBTZXRfNyIgRXhwb3J0UGF0aD0iL1NjcmlwdC9OaWFnYXJhRWRpdG9yLk5pYWdhcmFOb2RlUGFyYW1ldGVyTWFwU2V0Jy9FbmdpbmUvVHJhbnNpZW50LlRyYWpQYXJhbXM6TmlhZ2FyYVNjcmlwdFNvdXJjZV8wLk5pYWdhcmFHcmFwaF8wLk5pYWdhcmFOb2RlUGFyYW1ldGVyTWFwU2V0XzcnIg0KICAgQ2hhbmdlSWQ9Q0ZBRTUwQTk0OTZCMDYzREI4OTEzM0UxNDhDRDE3NkQNCiAgIE5vZGVQb3NYPTIwMDANCiAgIE5vZGVQb3NZPTIwMA0KICAgTm9kZUd1aWQ9RTdBRkU1MDlFN0Y5NjJBNUU5RTNBOTE1MjhERTcyMTkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD0yRTZFOTk1ODJBRTVDRDBDNzAxRTdDQzhBMjdCQTBENCxQaW5OYW1lPSJTb3VyY2UiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFQYXJhbWV0ZXJNYXAnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlSW5wdXRfMCAwMzZBNkM2NzAxMTEwREYxMEU5NzU2MUI2RjQ3ODBDOSwpLFBlcnNpc3RlbnRHdWlkPTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPTFDQzcyMDU1ODU2N0QwNjU1RkU1MzRCREIxM0Y3OEVELFBpbk5hbWU9IkRlc3QiLERpcmVjdGlvbj0iRUdQRF9PdXRwdXQiLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFQYXJhbWV0ZXJNYXAnIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQogICBDdXN0b21Qcm9wZXJ0aWVzIFBpbiAoUGluSWQ9QkRGRTI3MTk0QUNCNDE3MTNDRjUwMkE1NDFEMDYyRjUsUGluTmFtZT0iUGFydGljbGVzLlBvc2l0aW9uIixQaW5GcmllbmRseU5hbWU9SU5WVEVYVCgiUGFydGljbGVzLlBvc2l0aW9uIiksUGluVHlwZS5QaW5DYXRlZ29yeT0iVHlwZSIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iUGFyYW1ldGVyUGluIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LlNjcmlwdFN0cnVjdCcvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYVBvc2l0aW9uJyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLERlZmF1bHRWYWx1ZT0iMC4wMDAsMC4wMDAsMC4wMDAiLEF1dG9nZW5lcmF0ZWREZWZhdWx0VmFsdWU9IjAuMDAwLDAuMDAwLDAuMDAwIixQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD01Njc4NkQ1RjM1RjRBRkVCQjQzMjM4MTM5OTYyMzdFNyxQaW5OYW1lPSJQYXJ0aWNsZXMuUmliYm9uSUQiLFBpbkZyaWVuZGx5TmFtZT1JTlZURVhUKCJQYXJ0aWNsZXMuUmliYm9uSUQiKSxQaW5UeXBlLlBpbkNhdGVnb3J5PSJUeXBlIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5PSJQYXJhbWV0ZXJQaW4iLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Ii9TY3JpcHQvQ29yZVVPYmplY3QuU2NyaXB0U3RydWN0Jy9TY3JpcHQvTmlhZ2FyYS5OaWFnYXJhSW50MzInIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsTGlua2VkVG89KE5pYWdhcmFOb2RlT3BfMiBGQjhFNTJCMTg2MzQ1MzBGOUJFQTEyRjU0RDVFMjVBRiwpLFBlcnNpc3RlbnRHdWlkPTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPURFQTZFOUQwRkU0MzY5Mzg4MTk3NEE0Q0JDOTE1NEQ0LFBpbk5hbWU9IlBhcnRpY2xlcy5GaWxsUHJvZ3Jlc3MiLFBpbkZyaWVuZGx5TmFtZT1JTlZURVhUKCJQYXJ0aWNsZXMuRmlsbFByb2dyZXNzIiksUGluVHlwZS5QaW5DYXRlZ29yeT0iVHlwZSIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeT0iUGFyYW1ldGVyUGluIixQaW5UeXBlLlBpblN1YkNhdGVnb3J5T2JqZWN0PSIvU2NyaXB0L0NvcmVVT2JqZWN0LlNjcmlwdFN0cnVjdCcvU2NyaXB0L05pYWdhcmEuTmlhZ2FyYUZsb2F0JyIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU1lbWJlclJlZmVyZW5jZT0oKSxQaW5UeXBlLlBpblZhbHVlVHlwZT0oKSxQaW5UeXBlLkNvbnRhaW5lclR5cGU9Tm9uZSxQaW5UeXBlLmJJc1JlZmVyZW5jZT1GYWxzZSxQaW5UeXBlLmJJc0NvbnN0PUZhbHNlLFBpblR5cGUuYklzV2Vha1BvaW50ZXI9RmFsc2UsUGluVHlwZS5iSXNVT2JqZWN0V3JhcHBlcj1GYWxzZSxQaW5UeXBlLmJTZXJpYWxpemVBc1NpbmdsZVByZWNpc2lvbkZsb2F0PUZhbHNlLExpbmtlZFRvPShOaWFnYXJhTm9kZUN1c3RvbUhsc2xfNiBFODc4RUQ5MTBEQjYzMjQ1MjE2RDVBQjEyNkI5Q0Q3NSwpLFBlcnNpc3RlbnRHdWlkPTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLGJIaWRkZW49RmFsc2UsYk5vdENvbm5lY3RhYmxlPUZhbHNlLGJEZWZhdWx0VmFsdWVJc1JlYWRPbmx5PUZhbHNlLGJEZWZhdWx0VmFsdWVJc0lnbm9yZWQ9RmFsc2UsYkFkdmFuY2VkVmlldz1GYWxzZSxiT3JwaGFuZWRQaW49RmFsc2UsKQ0KICAgQ3VzdG9tUHJvcGVydGllcyBQaW4gKFBpbklkPUVDRTM0MTc4NUU3QjcyNDZEQjUzQTM3Q0U0RDIxNkVFLFBpbk5hbWU9IlBhcnRpY2xlcy5SaWJib25XaWR0aCIsUGluRnJpZW5kbHlOYW1lPUlOVlRFWFQoIlBhcnRpY2xlcy5SaWJib25XaWR0aCIpLFBpblR5cGUuUGluQ2F0ZWdvcnk9IlR5cGUiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IlBhcmFtZXRlclBpbiIsUGluVHlwZS5QaW5TdWJDYXRlZ29yeU9iamVjdD0iL1NjcmlwdC9Db3JlVU9iamVjdC5TY3JpcHRTdHJ1Y3QnL1NjcmlwdC9OaWFnYXJhLk5pYWdhcmFGbG9hdCciLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlNZW1iZXJSZWZlcmVuY2U9KCksUGluVHlwZS5QaW5WYWx1ZVR5cGU9KCksUGluVHlwZS5Db250YWluZXJUeXBlPU5vbmUsUGluVHlwZS5iSXNSZWZlcmVuY2U9RmFsc2UsUGluVHlwZS5iSXNDb25zdD1GYWxzZSxQaW5UeXBlLmJJc1dlYWtQb2ludGVyPUZhbHNlLFBpblR5cGUuYklzVU9iamVjdFdyYXBwZXI9RmFsc2UsUGluVHlwZS5iU2VyaWFsaXplQXNTaW5nbGVQcmVjaXNpb25GbG9hdD1GYWxzZSxMaW5rZWRUbz0oTmlhZ2FyYU5vZGVDdXN0b21IbHNsXzYgRDc2NjdCMUVCNjAzRjFENEQwQUMwNDRBOTM5OUQ4QUMsKSxQZXJzaXN0ZW50R3VpZD0wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCxiSGlkZGVuPUZhbHNlLGJOb3RDb25uZWN0YWJsZT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNSZWFkT25seT1GYWxzZSxiRGVmYXVsdFZhbHVlSXNJZ25vcmVkPUZhbHNlLGJBZHZhbmNlZFZpZXc9RmFsc2UsYk9ycGhhbmVkUGluPUZhbHNlLCkNCiAgIEN1c3RvbVByb3BlcnRpZXMgUGluIChQaW5JZD01QUVBODE3NkM3RkFEQjI4QjNEM0UzM0UzMURCQTQ0NCxQaW5OYW1lPSJBZGQiLFBpblR5cGUuUGluQ2F0ZWdvcnk9Ik1pc2MiLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnk9IkR5bmFtaWNBZGRQaW4iLFBpblR5cGUuUGluU3ViQ2F0ZWdvcnlPYmplY3Q9Tm9uZSxQaW5UeXBlLlBpblN1YkNhdGVnb3J5TWVtYmVyUmVmZXJlbmNlPSgpLFBpblR5cGUuUGluVmFsdWVUeXBlPSgpLFBpblR5cGUuQ29udGFpbmVyVHlwZT1Ob25lLFBpblR5cGUuYklzUmVmZXJlbmNlPUZhbHNlLFBpblR5cGUuYklzQ29uc3Q9RmFsc2UsUGluVHlwZS5iSXNXZWFrUG9pbnRlcj1GYWxzZSxQaW5UeXBlLmJJc1VPYmplY3RXcmFwcGVyPUZhbHNlLFBpblR5cGUuYlNlcmlhbGl6ZUFzU2luZ2xlUHJlY2lzaW9uRmxvYXQ9RmFsc2UsUGVyc2lzdGVudEd1aWQ9MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAsYkhpZGRlbj1GYWxzZSxiTm90Q29ubmVjdGFibGU9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzUmVhZE9ubHk9RmFsc2UsYkRlZmF1bHRWYWx1ZUlzSWdub3JlZD1GYWxzZSxiQWR2YW5jZWRWaWV3PUZhbHNlLGJPcnBoYW5lZFBpbj1GYWxzZSwpDQpFbmQgT2JqZWN0DQo="
End Object

M_ProjectileTrajectory — the ribbon material

Takes the ribbon's UV and composites the core glow, the travelling highlight and the about-to-land flash in one pass. The maths sits in a single Custom node, and its float2 result is split by a mask into Emissive and Opacity. All seven tuning knobs are scalar parameters, so they are set on the MI.

Paste this into the Material Editor

This is the text Unreal itself writes when you copy nodes. Select it and press Ctrl+C, then open a material and press Ctrl+V — the network arrives with its wiring and layout intact.

Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_1" ExportPath=/Script/UnrealEd.MaterialGraphNode_Comment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_1"'
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_M_ProjectileTrajectory_1" ExportPath=/Script/Engine.MaterialExpressionComment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_1.MaterialExpressionComment_M_ProjectileTrajectory_1"'
   End Object
   Begin Object Name="MaterialExpressionComment_M_ProjectileTrajectory_1" ExportPath=/Script/Engine.MaterialExpressionComment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_1.MaterialExpressionComment_M_ProjectileTrajectory_1"'
      SizeX=872
      SizeY=460
      Text="Inputs"
      CommentColor=(R=0.160000,G=0.280000,B=0.420000,A=0.300000)
      MaterialExpressionEditorX=-56
      MaterialExpressionEditorY=-104
      MaterialExpressionGuid=B6BA783F0835EE7F61EFB4C7E4C2AD1F
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpressionComment=/Script/Engine.MaterialExpressionComment'"MaterialExpressionComment_M_ProjectileTrajectory_1"'
   NodePosX=-56
   NodePosY=-104
   NodeWidth=872
   NodeHeight=460
   CommentColor=(R=0.160000,G=0.280000,B=0.420000,A=0.300000)
   NodeComment="Inputs"
   MoveMode=GroupMovement
   NodeGuid=980086991CD6CD57C95C2211897AA25B
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_2" ExportPath=/Script/UnrealEd.MaterialGraphNode_Comment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_2"'
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_M_ProjectileTrajectory_2" ExportPath=/Script/Engine.MaterialExpressionComment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_2.MaterialExpressionComment_M_ProjectileTrajectory_2"'
   End Object
   Begin Object Name="MaterialExpressionComment_M_ProjectileTrajectory_2" ExportPath=/Script/Engine.MaterialExpressionComment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_2.MaterialExpressionComment_M_ProjectileTrajectory_2"'
      SizeX=352
      SizeY=1310
      Text="Tuning"
      CommentColor=(R=0.140000,G=0.360000,B=0.320000,A=0.300000)
      MaterialExpressionEditorX=1244
      MaterialExpressionEditorY=-104
      MaterialExpressionGuid=5647650AA9B623B63C5A9F96FBEDE2BA
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpressionComment=/Script/Engine.MaterialExpressionComment'"MaterialExpressionComment_M_ProjectileTrajectory_2"'
   NodePosX=1244
   NodePosY=-104
   NodeWidth=352
   NodeHeight=1310
   CommentColor=(R=0.140000,G=0.360000,B=0.320000,A=0.300000)
   NodeComment="Tuning"
   MoveMode=GroupMovement
   NodeGuid=02EBFC569FFEC2FC2433F6E69BF08F38
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_3" ExportPath=/Script/UnrealEd.MaterialGraphNode_Comment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_3"'
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_M_ProjectileTrajectory_3" ExportPath=/Script/Engine.MaterialExpressionComment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_3.MaterialExpressionComment_M_ProjectileTrajectory_3"'
   End Object
   Begin Object Name="MaterialExpressionComment_M_ProjectileTrajectory_3" ExportPath=/Script/Engine.MaterialExpressionComment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_3.MaterialExpressionComment_M_ProjectileTrajectory_3"'
      SizeX=1132
      SizeY=460
      Text="Composite"
      CommentColor=(R=0.220000,G=0.340000,B=0.180000,A=0.300000)
      MaterialExpressionEditorX=2024
      MaterialExpressionEditorY=66
      MaterialExpressionGuid=CD86ECB1C7C1A595507C815134C88D55
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpressionComment=/Script/Engine.MaterialExpressionComment'"MaterialExpressionComment_M_ProjectileTrajectory_3"'
   NodePosX=2024
   NodePosY=66
   NodeWidth=1132
   NodeHeight=460
   CommentColor=(R=0.220000,G=0.340000,B=0.180000,A=0.300000)
   NodeComment="Composite"
   MoveMode=GroupMovement
   NodeGuid=D23D3C07720F1E912BBE32F7370522ED
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_4" ExportPath=/Script/UnrealEd.MaterialGraphNode_Comment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_4"'
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_M_ProjectileTrajectory_4" ExportPath=/Script/Engine.MaterialExpressionComment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_4.MaterialExpressionComment_M_ProjectileTrajectory_4"'
   End Object
   Begin Object Name="MaterialExpressionComment_M_ProjectileTrajectory_4" ExportPath=/Script/Engine.MaterialExpressionComment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_4.MaterialExpressionComment_M_ProjectileTrajectory_4"'
      SizeX=872
      SizeY=800
      Text="Colour"
      CommentColor=(R=0.420000,G=0.320000,B=0.120000,A=0.300000)
      MaterialExpressionEditorX=-56
      MaterialExpressionEditorY=1426
      MaterialExpressionGuid=B7E381543BB112246DDEB2600DD881C0
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpressionComment=/Script/Engine.MaterialExpressionComment'"MaterialExpressionComment_M_ProjectileTrajectory_4"'
   NodePosX=-56
   NodePosY=1426
   NodeWidth=872
   NodeHeight=800
   CommentColor=(R=0.420000,G=0.320000,B=0.120000,A=0.300000)
   NodeComment="Colour"
   MoveMode=GroupMovement
   NodeGuid=ADB3AB1C0523A5AE16AA72343ACBB2D2
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Comment Name="MaterialGraphNode_Comment_5" ExportPath=/Script/UnrealEd.MaterialGraphNode_Comment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_5"'
   Begin Object Class=/Script/Engine.MaterialExpressionComment Name="MaterialExpressionComment_M_ProjectileTrajectory_5" ExportPath=/Script/Engine.MaterialExpressionComment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_5.MaterialExpressionComment_M_ProjectileTrajectory_5"'
   End Object
   Begin Object Name="MaterialExpressionComment_M_ProjectileTrajectory_5" ExportPath=/Script/Engine.MaterialExpressionComment'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_Comment_5.MaterialExpressionComment_M_ProjectileTrajectory_5"'
      SizeX=612
      SizeY=460
      Text="Output"
      CommentColor=(R=0.440000,G=0.220000,B=0.140000,A=0.300000)
      MaterialExpressionEditorX=1244
      MaterialExpressionEditorY=1766
      MaterialExpressionGuid=A8A95FDB5463686B53C2FD9BBAB7FF2B
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpressionComment=/Script/Engine.MaterialExpressionComment'"MaterialExpressionComment_M_ProjectileTrajectory_5"'
   NodePosX=1244
   NodePosY=1766
   NodeWidth=612
   NodeHeight=460
   CommentColor=(R=0.440000,G=0.220000,B=0.140000,A=0.300000)
   NodeComment="Output"
   MoveMode=GroupMovement
   NodeGuid=FD04214DE13B9B6B04F753FDCDE039EF
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_1" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_1"'
   Begin Object Class=/Script/Engine.MaterialExpressionTextureCoordinate Name="MaterialExpressionTextureCoordinate_M_ProjectileTrajectory_1" ExportPath=/Script/Engine.MaterialExpressionTextureCoordinate'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_1.MaterialExpressionTextureCoordinate_M_ProjectileTrajectory_1"'
   End Object
   Begin Object Name="MaterialExpressionTextureCoordinate_M_ProjectileTrajectory_1" ExportPath=/Script/Engine.MaterialExpressionTextureCoordinate'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_1.MaterialExpressionTextureCoordinate_M_ProjectileTrajectory_1"'
      MaterialExpressionEditorX=520
      MaterialExpressionEditorY=0
      MaterialExpressionGuid=0C6E7FF09C965D5AC498EA209CE886FE
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionTextureCoordinate'"MaterialExpressionTextureCoordinate_M_ProjectileTrajectory_1"'
   NodePosX=520
   NodePosY=0
   NodeGuid=F6A3245B06B876F9ACAE57EFA54C0741
   CustomProperties Pin (PinId=8432EEDA0A75EE64CEC3429623147034,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 3E549144BE2F9CE2E96FDFA40EADBA2E,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_2" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_2"'
   Begin Object Class=/Script/Engine.MaterialExpressionDynamicParameter Name="MaterialExpressionDynamicParameter_M_ProjectileTrajectory_2" ExportPath=/Script/Engine.MaterialExpressionDynamicParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_2.MaterialExpressionDynamicParameter_M_ProjectileTrajectory_2"'
   End Object
   Begin Object Name="MaterialExpressionDynamicParameter_M_ProjectileTrajectory_2" ExportPath=/Script/Engine.MaterialExpressionDynamicParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_2.MaterialExpressionDynamicParameter_M_ProjectileTrajectory_2"'
      MaterialExpressionEditorX=0
      MaterialExpressionEditorY=170
      MaterialExpressionGuid=68AB0488FABF32A4C8B2EE4C3F5C0048
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionDynamicParameter'"MaterialExpressionDynamicParameter_M_ProjectileTrajectory_2"'
   NodePosX=0
   NodePosY=170
   bCanRenameNode=True
   NodeGuid=DAA42CC354201C7FC2ED7103855D5DEF
   CustomProperties Pin (PinId=D5A116D206B2E29682A1274223A15B6E,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_3 4D9FA639ACD33145B1A3128157E99FCD,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=649DD8BAFB2AC018E6CE943AB8847F44,PinName="Output2",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=F9B262FD58029813EB57F2C5256FF827,PinName="Output3",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=AAFFBD8C7D27D6D67C6C76BC12FA0B4A,PinName="Output4",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=FB481DFC4C559FBA22447F748C4EFD1E,PinName="RGB",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=9953F6C1A8F1D2E9816875F9387F53D9,PinName="RGBA",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_3" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_3"'
   Begin Object Class=/Script/Engine.MaterialExpressionComponentMask Name="MaterialExpressionComponentMask_M_ProjectileTrajectory_3" ExportPath=/Script/Engine.MaterialExpressionComponentMask'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_3.MaterialExpressionComponentMask_M_ProjectileTrajectory_3"'
   End Object
   Begin Object Name="MaterialExpressionComponentMask_M_ProjectileTrajectory_3" ExportPath=/Script/Engine.MaterialExpressionComponentMask'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_3.MaterialExpressionComponentMask_M_ProjectileTrajectory_3"'
      Input=(Expression=/Script/Engine.MaterialExpressionDynamicParameter'"MaterialExpressionDynamicParameter_M_ProjectileTrajectory_2"',OutputIndex=0,Mask=1,MaskR=1)
      R=True
      G=False
      B=False
      A=False
      MaterialExpressionEditorX=260
      MaterialExpressionEditorY=170
      MaterialExpressionGuid=044F4F1AB8F3C71003F4502E89A0BFB0
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionComponentMask'"MaterialExpressionComponentMask_M_ProjectileTrajectory_3"'
   NodePosX=260
   NodePosY=170
   NodeGuid=DE9B55814699096375ED7869214F6EE7
   CustomProperties Pin (PinId=4D9FA639ACD33145B1A3128157E99FCD,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_2 D5A116D206B2E29682A1274223A15B6E,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=A439E4841C7DF6B2303CD02C43360C16,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_4 7A756781997BD391F4C670ADF47EC8CD,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_4" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_4"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteDeclaration Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_4" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_4.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_4"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_4" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_4.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_4"'
      Input=(Expression=/Script/Engine.MaterialExpressionComponentMask'"MaterialExpressionComponentMask_M_ProjectileTrajectory_3"',OutputIndex=0)
      Name="FillProgress"
      VariableGuid=763AD9B226D29996F0F7D1EA9B596E96
      MaterialExpressionEditorX=520
      MaterialExpressionEditorY=170
      MaterialExpressionGuid=FE6AB4429C3428D40AF501B2F2D492B0
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_4"'
   NodePosX=520
   NodePosY=170
   bCanRenameNode=True
   NodeGuid=BC025D190492108F60128A058A8341E7
   CustomProperties Pin (PinId=7A756781997BD391F4C670ADF47EC8CD,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_3 A439E4841C7DF6B2303CD02C43360C16,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=EE9BECAC55082306D5653EE0C2059716,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_5" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_5"'
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_5" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_5.MaterialExpressionScalarParameter_M_ProjectileTrajectory_5"'
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_5" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_5.MaterialExpressionScalarParameter_M_ProjectileTrajectory_5"'
      DefaultValue=3.000000
      ParameterName="SweepCount"
      MaterialExpressionEditorX=1300
      MaterialExpressionEditorY=0
      MaterialExpressionGuid=B026FB4DA7E3338181117C99B8E93355
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_5"'
   NodePosX=1300
   NodePosY=0
   bCanRenameNode=True
   NodeGuid=9849DB465221D45AF68FD926955DAA22
   CustomProperties Pin (PinId=7909BAB8487DA00E729E1190E609A3C2,PinName="Default Value",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="3.0",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=F2529017DA45EFCBE3673BEFC4BEF743,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 EEAEC2A85440F07A101FB66863AF23D6,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_6" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_6"'
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_6" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_6.MaterialExpressionScalarParameter_M_ProjectileTrajectory_6"'
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_6" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_6.MaterialExpressionScalarParameter_M_ProjectileTrajectory_6"'
      DefaultValue=0.250000
      ParameterName="BaseOpacity"
      MaterialExpressionEditorX=1300
      MaterialExpressionEditorY=170
      MaterialExpressionGuid=6AB065EF7C2258F52BDD3067C64DCDD9
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_6"'
   NodePosX=1300
   NodePosY=170
   bCanRenameNode=True
   NodeGuid=68B5FBF41FAA7E26E7C0FF606C1C7B7E
   CustomProperties Pin (PinId=F40377C23C8FF0F282A9039E2AA51A96,PinName="Default Value",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.25",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=1FA1FEA16CA89D9F4641477DC05C7B37,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 B81BCA6972214E8DFE7F5F4D9F2E1E71,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_7" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_7"'
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_7" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_7.MaterialExpressionScalarParameter_M_ProjectileTrajectory_7"'
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_7" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_7.MaterialExpressionScalarParameter_M_ProjectileTrajectory_7"'
      DefaultValue=0.150000
      ParameterName="FlowWidth"
      MaterialExpressionEditorX=1300
      MaterialExpressionEditorY=340
      MaterialExpressionGuid=D75F47EAE435775E4220E8BE3926949A
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_7"'
   NodePosX=1300
   NodePosY=340
   bCanRenameNode=True
   NodeGuid=399D07F1404BA025F77800994A0973D5
   CustomProperties Pin (PinId=5BD0D6CD78EE36CF50A86B21759EE627,PinName="Default Value",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.15",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=20CB82142B4A7AF8107262FCFA983040,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 482F1EAB2419DA4BCB3D531B12752873,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_8" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_8"'
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_8" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_8.MaterialExpressionScalarParameter_M_ProjectileTrajectory_8"'
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_8" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_8.MaterialExpressionScalarParameter_M_ProjectileTrajectory_8"'
      DefaultValue=1.500000
      ParameterName="CoreGlow"
      MaterialExpressionEditorX=1300
      MaterialExpressionEditorY=510
      MaterialExpressionGuid=62C1CD0CD329E09ED9A706844D16AD02
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_8"'
   NodePosX=1300
   NodePosY=510
   bCanRenameNode=True
   NodeGuid=B7DF555FB43757659DA0C38B4D1C462D
   CustomProperties Pin (PinId=F6ABBB5F3386B68FF16F81E7A7376EAF,PinName="Default Value",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="1.5",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=E3CEF486D9A34D384D90B1FAD7B37B68,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 73B0ECBD60520777492A116D4AA16F8B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_9" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_9"'
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_9" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_9.MaterialExpressionScalarParameter_M_ProjectileTrajectory_9"'
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_9" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_9.MaterialExpressionScalarParameter_M_ProjectileTrajectory_9"'
      DefaultValue=0.900000
      ParameterName="ImpactThreshold"
      MaterialExpressionEditorX=1300
      MaterialExpressionEditorY=680
      MaterialExpressionGuid=B9A04F6362AC8D51CFEDAD1F7F4CF579
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_9"'
   NodePosX=1300
   NodePosY=680
   bCanRenameNode=True
   NodeGuid=45458E90B524BD0ADFDD0E88A659A11E
   CustomProperties Pin (PinId=C84A722683FE655E3FB6A736C12DDCB6,PinName="Default Value",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.9",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=377F8F05190DA45BA06600953F875197,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 6FED5F0A3C3BC6D2AE3F199E07A5B6FE,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_10" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_10"'
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_10" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_10.MaterialExpressionScalarParameter_M_ProjectileTrajectory_10"'
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_10" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_10.MaterialExpressionScalarParameter_M_ProjectileTrajectory_10"'
      DefaultValue=0.200000
      ParameterName="ImpactBoost"
      MaterialExpressionEditorX=1300
      MaterialExpressionEditorY=850
      MaterialExpressionGuid=96F058E9B25CCF1F7F252D1DC0B04A07
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_10"'
   NodePosX=1300
   NodePosY=850
   bCanRenameNode=True
   NodeGuid=2C9F04FA057A544C7DCDD6D298FC4D48
   CustomProperties Pin (PinId=C2553AF4772D334C98206904F1C06AC4,PinName="Default Value",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.2",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=929EF303019F2A99F9F855C3855679BD,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 591357DE1E8F300A3A7BA9E6094750B2,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_11" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_11"'
   Begin Object Class=/Script/Engine.MaterialExpressionScalarParameter Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_11" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_11.MaterialExpressionScalarParameter_M_ProjectileTrajectory_11"'
   End Object
   Begin Object Name="MaterialExpressionScalarParameter_M_ProjectileTrajectory_11" ExportPath=/Script/Engine.MaterialExpressionScalarParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_11.MaterialExpressionScalarParameter_M_ProjectileTrajectory_11"'
      DefaultValue=0.400000
      ParameterName="EndFadeStart"
      MaterialExpressionEditorX=1300
      MaterialExpressionEditorY=1020
      MaterialExpressionGuid=A65E93F8C41F033CAAD629680CAF2D1C
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_11"'
   NodePosX=1300
   NodePosY=1020
   bCanRenameNode=True
   NodeGuid=DCF216D397E58B674A562A67548DF60B
   CustomProperties Pin (PinId=628A76DB3A5BBA3558F5E09BC46B4959,PinName="Default Value",PinType.PinCategory="optional",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="0.4",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=22BEB5426AA740AEFC1F0FBE19ECED92,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 4783C5AEADC3F8E47AFF294645439298,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_12" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_12"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteUsage Name="MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_12" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteUsage'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_12.MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_12"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_12" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteUsage'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_12.MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_12"'
      DeclarationGuid=763AD9B226D29996F0F7D1EA9B596E96
      Desc="FillProgress"
      MaterialExpressionEditorX=2080
      MaterialExpressionEditorY=170
      MaterialExpressionGuid=8F07E03795966C73C1A0614FC4C5F0CB
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteUsage'"MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_12"'
   NodePosX=2080
   NodePosY=170
   NodeGuid=E668C6ECC9602818C1F36118E9C1DB04
   CustomProperties Pin (PinId=6A79702954362F1D74C34C858C0163E1,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 97654F6D0B805C37DC5A16C188ABC9AF,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_13" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_13"'
   Begin Object Class=/Script/Engine.MaterialExpressionCustom Name="MaterialExpressionCustom_M_ProjectileTrajectory_13" ExportPath=/Script/Engine.MaterialExpressionCustom'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_13.MaterialExpressionCustom_M_ProjectileTrajectory_13"'
   End Object
   Begin Object Name="MaterialExpressionCustom_M_ProjectileTrajectory_13" ExportPath=/Script/Engine.MaterialExpressionCustom'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_13.MaterialExpressionCustom_M_ProjectileTrajectory_13"'
      Code="float U  = UV.x;                 // along the path: 0 at the socket, 1 at the impact\r\nfloat V  = UV.y;                 // across the ribbon, 0..1\r\nfloat pr = saturate(FillProgress);\r\n\r\n// core glow: brightest down the middle, transparent at the edges\r\nfloat core = pow(1.0 - abs(V - 0.5) * 2.0, 2.0);\r\n\r\n// travelling highlight, accelerating and brightening with FillProgress\r\nfloat flowPhase = frac(pr * pr * SweepCount);\r\nfloat d    = frac(U - flowPhase);\r\nfloat band = smoothstep(FlowWidth, 0.0, min(d, 1.0 - d));\r\nfloat hi   = band * (0.5 + pr);\r\n\r\n// wash the whole ribbon just before impact\r\nfloat impact = smoothstep(ImpactThreshold, 1.0, pr);\r\nfloat reveal = max(hi, impact);\r\n\r\nfloat emissiveScalar = BaseOpacity + CoreGlow * core + reveal + impact * ImpactBoost;\r\nfloat opacity = max(BaseOpacity, max(reveal, core * BaseOpacity));\r\nfloat endFade = saturate((1.0 - U) / max(1.0 - EndFadeStart, 1e-4));\r\nopacity *= endFade;\r\nreturn float2(emissiveScalar, opacity);"
      OutputType=CMOT_Float2
      Description="TrajectoryShape"
      Inputs(0)=(InputName="UV",Input=(Expression=/Script/Engine.MaterialExpressionTextureCoordinate'"MaterialExpressionTextureCoordinate_M_ProjectileTrajectory_1"',OutputIndex=0))
      Inputs(1)=(InputName="FillProgress",Input=(Expression=/Script/Engine.MaterialExpressionNamedRerouteUsage'"MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_12"',OutputIndex=0))
      Inputs(2)=(InputName="SweepCount",Input=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_5"',OutputIndex=0))
      Inputs(3)=(InputName="BaseOpacity",Input=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_6"',OutputIndex=0))
      Inputs(4)=(InputName="FlowWidth",Input=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_7"',OutputIndex=0))
      Inputs(5)=(InputName="CoreGlow",Input=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_8"',OutputIndex=0))
      Inputs(6)=(InputName="ImpactThreshold",Input=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_9"',OutputIndex=0))
      Inputs(7)=(InputName="ImpactBoost",Input=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_10"',OutputIndex=0))
      Inputs(8)=(InputName="EndFadeStart",Input=(Expression=/Script/Engine.MaterialExpressionScalarParameter'"MaterialExpressionScalarParameter_M_ProjectileTrajectory_11"',OutputIndex=0))
      MaterialExpressionEditorX=2340
      MaterialExpressionEditorY=170
      MaterialExpressionGuid=C9C12F5826B8EBA658ED7330E1601F92
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionCustom'"MaterialExpressionCustom_M_ProjectileTrajectory_13"'
   NodePosX=2340
   NodePosY=170
   NodeGuid=AB5758338878367DB849C01F89D8389D
   CustomProperties Pin (PinId=3E549144BE2F9CE2E96FDFA40EADBA2E,PinName="UV",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_1 8432EEDA0A75EE64CEC3429623147034,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=97654F6D0B805C37DC5A16C188ABC9AF,PinName="FillProgress",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_12 6A79702954362F1D74C34C858C0163E1,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=EEAEC2A85440F07A101FB66863AF23D6,PinName="SweepCount",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_5 F2529017DA45EFCBE3673BEFC4BEF743,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=B81BCA6972214E8DFE7F5F4D9F2E1E71,PinName="BaseOpacity",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_6 1FA1FEA16CA89D9F4641477DC05C7B37,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=482F1EAB2419DA4BCB3D531B12752873,PinName="FlowWidth",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_7 20CB82142B4A7AF8107262FCFA983040,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=73B0ECBD60520777492A116D4AA16F8B,PinName="CoreGlow",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_8 E3CEF486D9A34D384D90B1FAD7B37B68,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=6FED5F0A3C3BC6D2AE3F199E07A5B6FE,PinName="ImpactThreshold",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_9 377F8F05190DA45BA06600953F875197,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=591357DE1E8F300A3A7BA9E6094750B2,PinName="ImpactBoost",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_10 929EF303019F2A99F9F855C3855679BD,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=4783C5AEADC3F8E47AFF294645439298,PinName="EndFadeStart",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_11 22BEB5426AA740AEFC1F0FBE19ECED92,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=45E3CBE2AA26760074673E261931C4F8,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_14 9688A972A498955EFB54E5C6DEDB0BF2,MaterialGraphNode_15 DF5598DBE3F6CB535D24E9C7013B2077,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_14" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_14"'
   Begin Object Class=/Script/Engine.MaterialExpressionComponentMask Name="MaterialExpressionComponentMask_M_ProjectileTrajectory_14" ExportPath=/Script/Engine.MaterialExpressionComponentMask'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_14.MaterialExpressionComponentMask_M_ProjectileTrajectory_14"'
   End Object
   Begin Object Name="MaterialExpressionComponentMask_M_ProjectileTrajectory_14" ExportPath=/Script/Engine.MaterialExpressionComponentMask'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_14.MaterialExpressionComponentMask_M_ProjectileTrajectory_14"'
      Input=(Expression=/Script/Engine.MaterialExpressionCustom'"MaterialExpressionCustom_M_ProjectileTrajectory_13"',OutputIndex=0)
      R=True
      G=False
      B=False
      A=False
      MaterialExpressionEditorX=2600
      MaterialExpressionEditorY=170
      MaterialExpressionGuid=A1360E63DD796565F59C9957E905035D
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionComponentMask'"MaterialExpressionComponentMask_M_ProjectileTrajectory_14"'
   NodePosX=2600
   NodePosY=170
   NodeGuid=2CDB4D90D5B3E4F655065870B4C941DA
   CustomProperties Pin (PinId=9688A972A498955EFB54E5C6DEDB0BF2,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 45E3CBE2AA26760074673E261931C4F8,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=0EF0E6053A68DD4F02A1272D6CD5CB0B,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_16 8674F6BE9EE44296143DF9A6CCFF592E,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_15" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_15"'
   Begin Object Class=/Script/Engine.MaterialExpressionComponentMask Name="MaterialExpressionComponentMask_M_ProjectileTrajectory_15" ExportPath=/Script/Engine.MaterialExpressionComponentMask'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_15.MaterialExpressionComponentMask_M_ProjectileTrajectory_15"'
   End Object
   Begin Object Name="MaterialExpressionComponentMask_M_ProjectileTrajectory_15" ExportPath=/Script/Engine.MaterialExpressionComponentMask'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_15.MaterialExpressionComponentMask_M_ProjectileTrajectory_15"'
      Input=(Expression=/Script/Engine.MaterialExpressionCustom'"MaterialExpressionCustom_M_ProjectileTrajectory_13"',OutputIndex=0)
      R=False
      G=True
      B=False
      A=False
      MaterialExpressionEditorX=2600
      MaterialExpressionEditorY=340
      MaterialExpressionGuid=99938D884A653FCA23514D50CE623DEE
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionComponentMask'"MaterialExpressionComponentMask_M_ProjectileTrajectory_15"'
   NodePosX=2600
   NodePosY=340
   NodeGuid=0B8CB5C32BCFCB899BFA4F3F740707D1
   CustomProperties Pin (PinId=DF5598DBE3F6CB535D24E9C7013B2077,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_13 45E3CBE2AA26760074673E261931C4F8,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=C84B47D294CB56940E914706F9991524,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_17 8C4BF843260733470A95233BFD2EF497,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_16" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_16"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteDeclaration Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_16" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_16.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_16"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_16" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_16.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_16"'
      Input=(Expression=/Script/Engine.MaterialExpressionComponentMask'"MaterialExpressionComponentMask_M_ProjectileTrajectory_14"',OutputIndex=0)
      Name="EmissiveScalar"
      VariableGuid=C5E4C40B7600A7ABD733591B75382C93
      MaterialExpressionEditorX=2860
      MaterialExpressionEditorY=170
      MaterialExpressionGuid=5D4B732770A17E3DD52321F7B6B67F01
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_16"'
   NodePosX=2860
   NodePosY=170
   bCanRenameNode=True
   NodeGuid=6AF11ABC329B381E2F965C906C3B6A16
   CustomProperties Pin (PinId=8674F6BE9EE44296143DF9A6CCFF592E,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_14 0EF0E6053A68DD4F02A1272D6CD5CB0B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=A6FA98593F17DB67A6DA230DF513B0FF,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_17" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_17"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteDeclaration Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_17" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_17.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_17"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_17" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_17.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_17"'
      Input=(Expression=/Script/Engine.MaterialExpressionComponentMask'"MaterialExpressionComponentMask_M_ProjectileTrajectory_15"',OutputIndex=0)
      Name="Opacity"
      VariableGuid=5149A49FAD08B7B134F0A20B1C4D4D31
      MaterialExpressionEditorX=2860
      MaterialExpressionEditorY=340
      MaterialExpressionGuid=D5A9B3500CB242364FB730BC1001244E
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_17"'
   NodePosX=2860
   NodePosY=340
   bCanRenameNode=True
   NodeGuid=C11B8C3B339933EDF53F5913266DABB1
   CustomProperties Pin (PinId=8C4BF843260733470A95233BFD2EF497,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_15 C84B47D294CB56940E914706F9991524,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=65C7897A26DCAE101ACC0FB285D98E44,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_18" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_18"'
   Begin Object Class=/Script/Engine.MaterialExpressionVectorParameter Name="MaterialExpressionVectorParameter_M_ProjectileTrajectory_18" ExportPath=/Script/Engine.MaterialExpressionVectorParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_18.MaterialExpressionVectorParameter_M_ProjectileTrajectory_18"'
   End Object
   Begin Object Name="MaterialExpressionVectorParameter_M_ProjectileTrajectory_18" ExportPath=/Script/Engine.MaterialExpressionVectorParameter'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_18.MaterialExpressionVectorParameter_M_ProjectileTrajectory_18"'
      ParameterName="FlashColor"
      MaterialExpressionEditorX=260
      MaterialExpressionEditorY=1530
      MaterialExpressionGuid=D6EF3C1F9476E56F72A5294F4D22C2C7
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionVectorParameter'"MaterialExpressionVectorParameter_M_ProjectileTrajectory_18"'
   NodePosX=260
   NodePosY=1530
   bCanRenameNode=True
   NodeGuid=E5589B049D2A6D3C72F8291851ADD708
   CustomProperties Pin (PinId=0C9D45729D4CDC5CB9238A66600A8404,PinName="Default Value",PinType.PinCategory="optional",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="(R=0.000000,G=0.000000,B=0.000000,A=1.000000)",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=True,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=16494F359389457B6F40E31D59BC828F,PinName="RGB",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_19 3718AB8A83E24420191229261973A430,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=A032CDCCA73D0A22E72673C0A0C7A622,PinName="R",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=D78CF89B9ECD5181AF0BCA47AFD1B021,PinName="G",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=EE9E999C75A80C72B630D9D0EE940E32,PinName="B",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=D8EB75198D5B341B0981564DBD43C73B,PinName="A",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=5493728E333C7F929FEFDE0AF45955BE,PinName="RGBA",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_19" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_19"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteDeclaration Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_19" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_19.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_19"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_19" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_19.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_19"'
      Input=(Expression=/Script/Engine.MaterialExpressionVectorParameter'"MaterialExpressionVectorParameter_M_ProjectileTrajectory_18"',OutputIndex=0,Mask=1,MaskR=1,MaskG=1,MaskB=1)
      Name="FlashColor"
      VariableGuid=582E21EDAE4E5099AF5FE511B2AD771D
      MaterialExpressionEditorX=520
      MaterialExpressionEditorY=1530
      MaterialExpressionGuid=F20A7CDBB9182CB39039E47713F946D7
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_19"'
   NodePosX=520
   NodePosY=1530
   bCanRenameNode=True
   NodeGuid=95AF43985EE6DA58EAAD1F10743703B8
   CustomProperties Pin (PinId=3718AB8A83E24420191229261973A430,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_18 16494F359389457B6F40E31D59BC828F,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=B5588E5D6012B05DC0E0E98DCD32BB4D,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_20" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_20"'
   Begin Object Class=/Script/Engine.MaterialExpressionParticleColor Name="MaterialExpressionParticleColor_M_ProjectileTrajectory_20" ExportPath=/Script/Engine.MaterialExpressionParticleColor'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_20.MaterialExpressionParticleColor_M_ProjectileTrajectory_20"'
   End Object
   Begin Object Name="MaterialExpressionParticleColor_M_ProjectileTrajectory_20" ExportPath=/Script/Engine.MaterialExpressionParticleColor'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_20.MaterialExpressionParticleColor_M_ProjectileTrajectory_20"'
      MaterialExpressionEditorX=0
      MaterialExpressionEditorY=1870
      MaterialExpressionGuid=A498B0D42B24FC52AC16BBE098AAA13A
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionParticleColor'"MaterialExpressionParticleColor_M_ProjectileTrajectory_20"'
   NodePosX=0
   NodePosY=1870
   NodeGuid=A1BE7297C0CE7A61942C29AFA8504BF5
   CustomProperties Pin (PinId=E81951C01BF2D034C1B479F039029364,PinName="RGB",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_22 6A271936601AFE4E2336B2BA9670E56A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=DC2C9EAD64192FC9D8D3C5018BC8372D,PinName="R",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="red",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=144748268D26EB8AA1799A32858892D6,PinName="G",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="green",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=0E5F6D1D950EC9B98B075CF13D5C6B5D,PinName="B",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="blue",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=02D52AC0626006445717AF14A2E73B68,PinName="A",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="alpha",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=2AF8262D90C6E46754FB668D05821873,PinName="RGBA",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="mask",PinType.PinSubCategory="rgba",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_21" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_21"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteUsage Name="MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_21" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteUsage'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_21.MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_21"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_21" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteUsage'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_21.MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_21"'
      DeclarationGuid=C5E4C40B7600A7ABD733591B75382C93
      Desc="EmissiveScalar"
      MaterialExpressionEditorX=0
      MaterialExpressionEditorY=2040
      MaterialExpressionGuid=BA04AAFA154254E678F0888275F88D4E
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteUsage'"MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_21"'
   NodePosX=0
   NodePosY=2040
   NodeGuid=158EAF611E4962BD83A413758C6514B1
   CustomProperties Pin (PinId=72CCB1A49938C740528B6470125D9F44,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_22 B9778F67F69027F78A22222BC51FA293,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_22" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_22"'
   Begin Object Class=/Script/Engine.MaterialExpressionMultiply Name="MaterialExpressionMultiply_M_ProjectileTrajectory_22" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_22.MaterialExpressionMultiply_M_ProjectileTrajectory_22"'
   End Object
   Begin Object Name="MaterialExpressionMultiply_M_ProjectileTrajectory_22" ExportPath=/Script/Engine.MaterialExpressionMultiply'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_22.MaterialExpressionMultiply_M_ProjectileTrajectory_22"'
      A=(Expression=/Script/Engine.MaterialExpressionParticleColor'"MaterialExpressionParticleColor_M_ProjectileTrajectory_20"',OutputIndex=0,Mask=1,MaskR=1,MaskG=1,MaskB=1)
      B=(Expression=/Script/Engine.MaterialExpressionNamedRerouteUsage'"MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_21"',OutputIndex=0)
      MaterialExpressionEditorX=260
      MaterialExpressionEditorY=1870
      MaterialExpressionGuid=2376DC625AD0CFD44128D70E45E96D2C
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionMultiply'"MaterialExpressionMultiply_M_ProjectileTrajectory_22"'
   NodePosX=260
   NodePosY=1870
   NodeGuid=C8FF04B9C32EB78FB321FF49DB92EB3B
   CustomProperties Pin (PinId=6A271936601AFE4E2336B2BA9670E56A,PinName="A",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_20 E81951C01BF2D034C1B479F039029364,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=B9778F67F69027F78A22222BC51FA293,PinName="B",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_21 72CCB1A49938C740528B6470125D9F44,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=C7B5290C78DEA206C464A1CC14DEFDE2,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_23 D9462E3277008A3C31EA898A04F83158,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_23" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_23"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteDeclaration Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_23" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_23.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_23"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_23" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_23.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_23"'
      Input=(Expression=/Script/Engine.MaterialExpressionMultiply'"MaterialExpressionMultiply_M_ProjectileTrajectory_22"',OutputIndex=0)
      Name="EmissiveOutput"
      VariableGuid=E9B384A2B3DA46EE91412F7ED5832EAA
      MaterialExpressionEditorX=520
      MaterialExpressionEditorY=1870
      MaterialExpressionGuid=602DE02307A478870A59E0B320462B9F
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_23"'
   NodePosX=520
   NodePosY=1870
   bCanRenameNode=True
   NodeGuid=EBD31F508406A224EA185EE457EC3330
   CustomProperties Pin (PinId=D9462E3277008A3C31EA898A04F83158,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_22 C7B5290C78DEA206C464A1CC14DEFDE2,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=29849BC510E896C1A673CF9902C72295,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_24" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_24"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteUsage Name="MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_24" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteUsage'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_24.MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_24"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_24" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteUsage'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_24.MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_24"'
      DeclarationGuid=5149A49FAD08B7B134F0A20B1C4D4D31
      Desc="Opacity"
      MaterialExpressionEditorX=260
      MaterialExpressionEditorY=2040
      MaterialExpressionGuid=A71B16399F5E3C79131E964DFE6EEF65
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteUsage'"MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_24"'
   NodePosX=260
   NodePosY=2040
   NodeGuid=06DA5DEAF778992220C43DE252C9A912
   CustomProperties Pin (PinId=03F348932A43E1E343D2B533D21DFCD3,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_25 98FCEC197EBB66BBD330858D65FB768B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_25" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_25"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteDeclaration Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_25" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_25.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_25"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_25" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_25.MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_25"'
      Input=(Expression=/Script/Engine.MaterialExpressionNamedRerouteUsage'"MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_24"',OutputIndex=0)
      Name="OpacityOutput"
      VariableGuid=C0664FBA2EA018A4F9E96FFE19AF2E54
      MaterialExpressionEditorX=520
      MaterialExpressionEditorY=2040
      MaterialExpressionGuid=9A7640BAF18E535233A1F452CF3B705A
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteDeclaration'"MaterialExpressionNamedRerouteDeclaration_M_ProjectileTrajectory_25"'
   NodePosX=520
   NodePosY=2040
   bCanRenameNode=True
   NodeGuid=9D4808218737D16189FCB125E01E4F95
   CustomProperties Pin (PinId=98FCEC197EBB66BBD330858D65FB768B,PinName="Input",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_24 03F348932A43E1E343D2B533D21DFCD3,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=9FB6B66401AE15BC6A24A5C0BCAF2700,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_26" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_26"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteUsage Name="MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_26" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteUsage'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_26.MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_26"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_26" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteUsage'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_26.MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_26"'
      DeclarationGuid=E9B384A2B3DA46EE91412F7ED5832EAA
      Desc="EmissiveOutput"
      MaterialExpressionEditorX=1300
      MaterialExpressionEditorY=1870
      MaterialExpressionGuid=0074C8E48A6CF022A00343000322335A
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteUsage'"MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_26"'
   NodePosX=1300
   NodePosY=1870
   NodeGuid=CE390A87B8FF04118818B0CF14051295
   CustomProperties Pin (PinId=A7D464DE42EB510C3144A8B685432200,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_28 1F85509A370567C273D0692AC75C3F5A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode Name="MaterialGraphNode_27" ExportPath=/Script/UnrealEd.MaterialGraphNode'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_27"'
   Begin Object Class=/Script/Engine.MaterialExpressionNamedRerouteUsage Name="MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_27" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteUsage'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_27.MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_27"'
   End Object
   Begin Object Name="MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_27" ExportPath=/Script/Engine.MaterialExpressionNamedRerouteUsage'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_27.MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_27"'
      DeclarationGuid=C0664FBA2EA018A4F9E96FFE19AF2E54
      Desc="OpacityOutput"
      MaterialExpressionEditorX=1300
      MaterialExpressionEditorY=2040
      MaterialExpressionGuid=16C7E975F7A4810370684349738B49C3
      Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   End Object
   MaterialExpression=/Script/Engine.MaterialExpressionNamedRerouteUsage'"MaterialExpressionNamedRerouteUsage_M_ProjectileTrajectory_27"'
   NodePosX=1300
   NodePosY=2040
   NodeGuid=171AE93EDFD92248FC0D8276D0E7938C
   CustomProperties Pin (PinId=6D5AD65F501BBBED8F35F89FD8A59CB9,PinName="Output",PinFriendlyName=NSLOCTEXT("MaterialGraphNode", "Space", " "),Direction="EGPD_Output",PinType.PinCategory="",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_28 3E2C601938E72333691AF2410609FBBF,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object
Begin Object Class=/Script/UnrealEd.MaterialGraphNode_Root Name="MaterialGraphNode_28" ExportPath=/Script/UnrealEd.MaterialGraphNode_Root'"/Engine/Transient.M_ProjectileTrajectory:MaterialGraph_0.MaterialGraphNode_28"'
   Material=/Script/UnrealEd.PreviewMaterial'"/Engine/Transient.M_ProjectileTrajectory"'
   NodePosX=1560
   NodePosY=1870
   NodeGuid=CB2F4A922E13C30225CF535EFEBD429E
   CustomProperties Pin (PinId=CFEBBA3030B60478BC5E0DE08A1485C0,PinName="Base Color",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=BA81D8CFD3E102633898F97B79601A0F,PinName="Metallic",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=1D2D5FF7CB532D47874687FB0B1ACA7B,PinName="Specular",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=76D2F68A54172B08A4ADF662C07BE094,PinName="Roughness",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=8056F6E2D3BB6BE2B3C3995258B058E2,PinName="Anisotropy",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=1F85509A370567C273D0692AC75C3F5A,PinName="Emissive Color",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_26 A7D464DE42EB510C3144A8B685432200,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=3E2C601938E72333691AF2410609FBBF,PinName="Opacity",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(MaterialGraphNode_27 6D5AD65F501BBBED8F35F89FD8A59CB9,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=0C45E94D67310959A0F902F948F9A41D,PinName="Opacity Mask",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=8F8F338D962A4425425521F5BDD3C50D,PinName="Normal",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=81D1B5B5D9CC4F83536395396F58A9F3,PinName="Tangent",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=EADC9DB215B1F33CDEA6AD8680765204,PinName="World Position Offset",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=D22532A4E868592C395F669C16EF14AC,PinName="Subsurface Color",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=00852429480198BFE64C62E921713CEB,PinName="Ambient Occlusion",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=8455599D23E982EDFD605DC13C520589,PinName="Refraction",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
   CustomProperties Pin (PinId=ADF8CFEE5EE9DAA25349370A3B03974E,PinName="Pixel Depth Offset",PinType.PinCategory="optional",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,)
End Object

Traps

Rendered with bue-render (MIT), embedded in full — this page makes no network requests.